[英]php reference pass
我在PHP中将变量作为引用传递时遇到问题。
我想在以下位置设置$grand_total
:
$data = array('title' => 'blabla', 'value' => &$grand_total);
// Set after
$grand_total += 50;
这运行没有问题,但是当我使用函数传递$grand_total
var时,出现以下错误:
遇到PHP错误严重性:8192消息:已不赞成调用时传递引用文件名:controllers / checkout.php行号:131
我正在像这样传递变量:
$data = array('title' => 'blabla', 'value' => price(&$grand_total));
// Set after
$grand_total += 50;
我必须使用price()
函数。
谁能帮我?
对不起,我的英语不好。
这对你来说很好
$grand_total = 10;
function &price($value)
{
$value += 10;
return $value ;
}
$grand_total = price($grand_total);
$data = array('title' => 'blabla', 'value' =>$grand_total);
$grand_total += 50;
var_dump($grand_total)
产量
int 70
欲获得更多信息
http://us3.php.net/manual/zh/language.references.php
http://us3.php.net/manual/zh/language.references.pass.php
谢谢 :)
没有该功能,将有些困难。 我们不知道“ 131”行上的内容
查看您的php.ini
allow_call_time_pass_reference = On
如果将此参数设置为关闭,则它不起作用。 但是一般而言,PHP 5中已弃用使用引用(“&$ grand_total”)调用time函数。 调用不带引用的函数,或将函数中的引用分配给另一个变量,然后使用变量而不是引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.