1.PHP5.4以下版本,定义数组还是老老实实用
$arr = array();
而不要使用:
$arr = [] ;
2.要使用json_decode
函数时,记得把每组冒号前后的字符串用双引号括起来,然后最外层再用单引号
例如以下字符串是无法解析的(当然,这是PHP完全遵循JSON规范):
$questions = "{0:'语言是存在的家园,这是谁的理论?',1:'描写君子的外表下面哪个不常见?',2:'君王要想使人信服须具备'}";
而应使用像下面这样的:
$questions = '{0:"语言是存在的家园,这是谁的理论?",1:"描写君子的外表下面哪个不常见?",2:"君王要想使人信服须具备"}';
3.PHP5.4以下版本不能这样写
echo explode("---","123")[0];
应该这样写,不然会报错:
$arr = explode("---","123");
echo $arr[0];
4.
"a" == 0 ; //true
5.
$arr = ['12a','b'];
echo in_array(12,$arr); // true
6.cURL执行时会无视PHP的超时设置:
ini_set("max_execution_time",1800);
所以最好设置每次使用cURL时设置CURLOPT_TIMEOUT
7.strpos
第二个参数若为数字,PHP内部的计算方式如下:
strpos('a1b2c777777',777777);
//等价于
strpos('a1b2c777777',chr(777777%256));
得到的结果就是字符’1’在字符串中出现的位置
-
list($key,$value) = each(array('123'=>'abc'));
PHP会自作主张把 ‘123’转换成 int
9.使用array_multisort
对数组重新排序的时候,函数内部会把数字key重新索引从0开始。同样也会把字符串数字小于2^31(即2147483648)的key自动转成int然后重新索引。
10.urldecode
会将 ‘+’ 转成空格,rawurldecode
则不会。 另:超全局变量 $_GET
和 $_REQUEST
已经被解码了
不回不行了,因为楼猪太有才了。
嘿嘿,回个贴表明我来过。
路过留个言
来看看~
1.PHP5.32.9或以上版本(具体到哪个版本不清楚),定义数组还是老老实实用
大神还破解尔雅吗?
http://www.ccc5.cc/erya
支持一下