php 7.2 一些注意事项.

<?php
$b = array();
each($b); // Deprecated: The each() function is deprecated. This message will be suppressed on further calls

each 函数 在php7.2已经设定为过时,

<?php

count('');

// Warning:  count(): Parameter must be an array or an object that implements Countable

count 函数在php7.2将严格执行类型区分.  不正确的类型传入, 会引发一段警告.

<?php
$newfunc = create_function('$a,$b', 'return "ln($a) + ln($b) = " . log($a * $b);');
echo "New anonymous function: $newfunc\n";
echo $newfunc(2, M_E) . "\n";
// outputs
// New anonymous function: lambda_1
// ln(2) + ln(2.718281828459) = 1.6931471805599 // Warning This function has been DEPRECATED as of PHP 7.2.0. Relying on this function is highly discouraged.

create_function 函数在php7.2已经设定为过时.

-----------------------------------------------------------------------------------------------------------

解决方法:

function fun_adm_each(&$array){
$res = array();
$key = key($array);
if($key !== null){
next($array);
$res[1] = $res['value'] = $array[$key];
$res[0] = $res['key'] = $key;
}else{
$res = false;
}
return $res;
}

替代each.

function fun_adm_count($array_or_countable,$mode = COUNT_NORMAL){
if(is_array($array_or_countable) || is_object($array_or_countable)){
return count($array_or_countable, $mode);
}else{
return 0;
}
}

替代count.

<?php
$fun = function ($str ){echo $str}
$fun('Yuan');

替代create_function.

END

上一篇:redis下载安装以及添加服务


下一篇:全新重装win8.1系统后 配置开发及办公环境步骤