2017年1月

HTTPS工作原理和TCP握手机制

1、HTTPS的工作原理
HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL协议不仅仅是一套加密传输的协议,更是一件经过艺术家精心设计的艺术品,TLS/SSL中使用了非对称加密,对称加密以及HASH算法。握手过程的具体描述如下:

- 阅读剩余部分 -

php获取两经纬度之间的距离

<?php 
/**
 * 获取指定经纬度之间距离
 *
 * 将地球假定为圆形,数据精准度有限
 * @param      integer  $lat1   纬度 1
 * @param      integer  $lng1   经度 1
 * @param      integer  $lat2   纬度 2
 * @param      integer  $lng2   经度 2
 *
 * @return     integer  指定位置距离 单位:米
 */
function get_distance($lat1, $lng1, $lat2, $lng2){
    $PI = 3.14159265358979323; // 圆周率
    $R = 6371229; // 地球的半径
    $x = $y = $distance = 0;

    $x = ($lng2 - $lng1) * $PI * $R * cos((($lat1 + $lat2) / 2) * $PI / 180) / 180;
    $y = ($lat2 - $lat1) * $PI * $R / 180;

    $distance = hypot($x, $y);
    return $distance;
}

// 北京到潍坊距离
echo get_distance(39.914889,116.403874,36.713212,119.168138);

DedeCms autoindex和itemindex使用介绍 获取循环第几个元素索引值

问题:在循环过程中需要对2的倍数的元素添加某一样式
解决:

{dede:list orderby=pubdate typeid='3' pagesize='9' infolen='60' titlelen=42}
<li [field:global name='autoindex' runphp='yes']if(@me%2 == 0){@me="class='mgn-show'";}else{@me='';}[/field:global]><a href="[field:arcurl/]"><img src="[field:litpic/]" alt="[field:title/]" title="[field:title/]"><p>[field:title/]</p></a></li>
{/dede:list}

- 阅读剩余部分 -

MySQL中NULL与空字符串

经常会错误的认为NULL与空字符串''是相同的。这看似是一件不重要的事情,但是在MySQL中,这两者是完全不同的。NULL是指没有值,而''则表示值是存在的,只不过是个空值。对于SQL的新手,NULL值的概念常常会造成混淆,他们常认为NULL与MySQL空字符串是相同的事。情况并非如此。例如,下述语句是完全不同的:
MySQL> INSERT INTO my_table (phone) VALUES (NULL);
mysql> INSERT INTO my_table (phone) VALUES ('');

- 阅读剩余部分 -