问题是:
不推荐使用:在第155行的C:\ wamp \ www \ FlashChat_v607 \ chat \ inc \ common.php中弃用了按引用分配new的返回值
注意:未定义的变量:第94行的C:\ wamp \ www \ FlashChat_v607 \ chat \ inc \ common.php中的步骤
这是您可以找到代码的链接: http://www5.zippyshare.com/v/3592861/file.html
答案 0 :(得分:6)
这一行:
$GLOBALS['fc_config']['bot'] =& new Bot();
应该是这样的:
$GLOBALS['fc_config']['bot'] = new Bot();
第94行的通知:
if ( $step > 2 || !isset($step) )
你可能会忽略。您正在检查$ step的值,但您从未定义该变量。但是,既然你也明确检查它isset
我猜你应该没问题。最好先检查一下isset
。
无论如何,这些都是小问题。听起来真正的问题可能是您在生产服务器上启用了E_NOTICE,E_DEPRECATED和错误显示,这会弄乱您的页面显示错误消息。
尝试更改error display options in your php.ini,以便不显示这些内容(尽管您可能希望将它们留在开发框中)
答案 1 :(得分:2)
“通过引用分配新的返回值”是因为这个成语在你的代码中
$foo = &new Bar;
将其更改为
$foo = new Bar;
要了解PHP4中使用此成语的原因,请参阅this manual page。
答案 2 :(得分:1)
第94行的通知是因为......
if ( $step > 2 || !isset($step) )
应该是:
if (!isset($step) || $step > 2 )
这是因为您始终要检查变量是否存在FIRST,然后检查任何其他值。如果未设置$ step,您将收到您收到的NOTCIE。