Edw*_* Yu 9 php pass-by-reference
我在第57行收到此错误: $password = str_replace($key, $value, $password, 1);
据我所知,我只传递变量.这是一些更多的背景:
$replace_count = 0;
foreach($replacables as $key => $value)
{
if($replace_count >= 2)
break;
if(strpos($password, $key) !== false)
{
$password = str_replace($key, $value, $password, 1);
$replace_count++;
}
}
Run Code Online (Sandbox Code Playgroud)
您不能传递1的常量,修复是将其设置为变量.
更改:
$password = str_replace($key, $value, $password, 1);
Run Code Online (Sandbox Code Playgroud)
至:
$var = 1
$password = str_replace($key, $value, $password, $var);
Run Code Online (Sandbox Code Playgroud)
更新:更改为在注释中的反馈中声明方法调用之外的变量.
通过1那里毫无意义.(为什么不通过42,或-5?)的第四个参数str_replace是仅用于传递信息反馈给你.该功能不使用变量的原始价值可言.那么,如果没有使用,那么传递内容的重点是什么(即使是允许的话),并且你不会使用发回给你的新值?该参数是可选的; 只是不要传递任何东西.