PHP 被忽视的细节(一)

PHP 被忽视的细节(一)_第1张图片
冷门知识大揭秘
1、小数点后四舍五入。

[1]

$round_eg = 12345.42633668;
echo round($round_eg,'2');//12345.43

[2]

$numberformat_eg = 12345.42633668;
echo round($number_format,'2','.',' ');//12 345.43

[3]js中的小数点四舍五入

  var a = 2.1512131231231321;
alert(a.toFixed(3));

2.array_intersect()和array_diff();

1.在php中,求两个数组的交集,array_intersect()比array_diff()要快。
2如果求数组$a和数组$b的差集的个数,count(array_intersect($a,$b)),而不使用count(array_diff($a,$b)),因为前者比后者快,大数据面前,比较明显。


$array1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $array2=array("e"=>"red","f"=>"black","g"=>"purple");
$result1 = array_diff($array1, $array2); //获取$array1中和$array2中不同元素 (差集)
$result2 = array_intersect($array1, $array2); //获取$array1中和$array2中相同元素 (交集)
print_r($result1);//Array([b] => green[c] => blue[d] => yellow)//
print_r($result2);//Array([a] => red)//

3.php.ini 中 session.auto_start 开启与关闭的区别

session.auto_start 开启就自动完成了session_start() session.auto_start = on
时,执行 session_start() 将产生新的 session_id
session.auto_start = on 的优点在于,任何时候都不会因忘记执行 session_start() 或 session_start() 在程序里的位置不对,而导致错误
缺点在于,如果你使用的是第三方代码,则必须删去其中的全部 session_start() 。否则将不能得到正确的结果

你可能感兴趣的:(PHP 被忽视的细节(一))