<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[[实践OK]Call-time pass-by-reference has been deprecated解决方法,解决 PHP Fatal error: Call-time pass-by-reference has been removed。]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Php/Js/Shell/Go]]></category>
<pubDate>Mon, 07 Jan 2013 09:14:21 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	今天调试遇到一个错误：:Call-time pass-by-reference has been deprecated... <br/>查了老一会儿，在网上找了下答案，于是找到了并修改了一下php.ini就好了，如下：<br/>Warning: Call-time pass-by-reference has been deprecated解决方法<br/>修改php.ini就可以了。<br/>1. 在PHP.ini中搜索关键字 : allow_call_time_pass_reference 没有的自行建立。<br/>2. 将 Off 改成 On ,Web Server重起就OK了~<br/>allow_call_time_pass_reference = Off 变成 allow_call_time_pass_reference = On<br/><br/>从php手册中可以找到：<br/>allow_call_time_pass_reference boolean<br/>是否启用在函数调用时强制参数被按照引用传递。此方法已不被赞成并在 PHP/Zend 未来的版本中很可能不再支持。鼓励使用的方法是在函数定义中指定哪些参数应该用引用传递。鼓励大家尝试关闭此选项并确保脚本能够正常运行，以确保该脚本也能在未来的版本中运行（每次使用此特性都会收到一条警告，参数会被按值传递而不是按照引用传递）。<br/>在函数调用时通过引用传递参数是不推荐的，因为它影响到了代码的整洁。如果函数的参数没有声明作为引用传递，函数可以通过未写入文档的方法修改其参数。要避免其副作用，最好仅在函数声明时指定那个参数需要通过引用传递。<br/>当allow_call_time_pass_reference=Off时<br/><textarea name="code" class="php" rows="15" cols="100">
&lt;?php
function abc($a,$b)&#123;
&nbsp;&nbsp; echo &quot;$a&#92;n&quot;;
&nbsp;&nbsp; echo &quot;$b&#92;n&quot;;
&nbsp;&nbsp; $b = &#039;cde&#039;;
&#125;
$a = &#039;abc&#039;;
$b = &quot;bcd&quot;;
//不好的用法，会引发一个php warnning
abc($a ,&amp;$b);
echo &quot;$b&#92;n&quot;;
?&gt;
</textarea><br/>要想通过引用来传递参数$b，程序可改为<br/><textarea name="code" class="php" rows="15" cols="100">
&lt;?php
function abc($a,&amp; $b)&#123;
&nbsp;&nbsp; echo &quot;$a&#92;n&quot;;
&nbsp;&nbsp; echo &quot;$b&#92;n&quot;;
&nbsp;&nbsp; $b = &#039;cde&#039;;
&#125;
$a = &#039;abc&#039;;
$b = &quot;bcd&quot;;
//正确的用法
abc($a ,$b);
echo &quot;$b&#92;n&quot;;
//output is:
//abc
//bcd
//cde
?&gt;
</textarea><br/><br/> 若是在PHP，用户自定义函数中传入引用参数，例如：<br/><textarea name="code" class="php" rows="15" cols="100">
&lt;?php
$param = 0;
 function my_function（&amp;$param）
&#123;
&nbsp;&nbsp;$param = &quot;&quot;New Value/Change Value&quot;&quot;;
&#125;
?&gt;
</textarea><br/>你可能须要开端该设置。<br/><br/>Linux下是这样的报错：Call-time pass-by-reference has been removed<br/>解决 PHP Fatal error: Call-time pass-by-reference has been removed<br/>如果这样使用函数(或者类)的话，会产生一个 PHP Fatal error:<br/>foo(&amp;$var);<br/>实际上，这样用法在php5.3中就会有提示，只是之前的仅仅会提示Deprecated而已。<br/><textarea name="code" class="php" rows="15" cols="100">
// 正确写法
function myFunc(&amp;$arg) &#123; do something... &#125;
myFunc($var);//Call myFunc
//错误写法
function myFunc($arg) &#123; do something... &#125;
myFunc(&amp;$arg);//Call myFunc
</textarea><br/><br/>php.ini中allow_call_time_pass_reference参数的意思<br/><br/>从php手册中可以找到：allow_call_time_pass_reference boolean，在PHP5.3里是一个警告可以用：<br/><textarea name="code" class="php" rows="15" cols="100">allow_call_time_pass_reference = On</textarea><br/>来去掉，但是在PHP5.4里就成了一个错误，得修改，如下：<br/><textarea name="code" class="php" rows="15" cols="100">
函数原型：
private function encodeRecommendListHtmlTags($targetname = &#039;video&#039;, &amp;$list)
&#123;
&#125;
以前调用：$this-&gt;encodeRecommendListHtmlTags($target, &amp;$list);
修改调用：$this-&gt;encodeRecommendListHtmlTags($target, $list); //去掉这个&amp;符号。

</textarea><br/>参考：http://www.azuis.me/blog/archives/175
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [实践OK]Call-time pass-by-reference has been deprecated解决方法,解决 PHP Fatal error: Call-time pass-by-reference has been removed。]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>