php专区

 首页 > php专区 > PHP应用 > php函数大全 > Strict Standards: Only variables should be passed by referen

Strict Standards: Only variables should be passed by referen

分享到:
【字体:
导读:
          php中使用内置的reset函数可以获取array的第一个元素的值,例如:$arr=array( 39;one 39;, 39;two 39;, 39;three 39;);echoreset($arr...

Strict Standards: Only variables should be passed by reference in

php中使用内置的reset函数可以获取array的第一个元素的值,例如:

  1. $arr = array('one''two''three'); 
  2. echo reset($arr);   
  3. // 输出的结果为 one对于下述代码,如果php开启了"Strict Standards",将会看到"Strict Standards: Only variables should be passed by reference in"的提示。 

$str = 'phpfensi.com';echo reset(explode('.', $str));

为什么会这样呢?可以先看看reset函数的定义:

function reset (array &$array) {}从定义中可以看到,reset接受的参数是一个array的引用,而上述代码中explode返回值不是任何array的引用,所以在"Strict Standards"下会有上述提示。解决办法很简单,只需要把reset(explode('.', $str))分两步写即可,第一步先把explode的返回值赋给一个变量,第二步把这个变量作为reset参数。

出现上面的提示的不只是reset函数,只要参数接受的是对象引用,而传值直接使用function返回值都会看到那样的提示。例如内置的array_pop、shuffle、curent、next、prev、next等等.

分享到:
php simplexml_load_file 中文乱码的解决...
php simplexml_load_file 中文乱码的解决方法 在PHP5.0 中,simplexml_load_file()是一个很好的读取和处理XML文件的函数,但是在读取和处理中文时会出现乱码,经过研究发现,如果是中文内容,必须经过iconv编码转换,否则显示为乱码,代码如下: $xml=simple_load_file('xml文件'...
cURL函数库错误码说明之PHP curl_errno函...
cURL函数库错误码说明之PHP curl_errno函数 背景概述:游戏接口是使用PHP cURL扩展进行请求操作,但是,被请求的服务器经常会无故的不响应或者超时,总之,就是请求之后收不到响应回来的数据,这时候可不能说对方API接口有问题,或者服务器有故障,总之,可能出现的问题是非常之多,不能一概而论。 ...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……