双引号上的解析错误(但本地服务器上没有错误)

时间:2013-11-06 07:45:09

标签: php

所以我的代码上有以下功能:

/* returns a random string */
function randStr($length = 32, $chars = "abcdefghijklmnopqrstuxyvwzABCDEFGHIJKLMNOPQRSTUXYVWZ!@#$%&*()_-+=") {
//function randStr($length, $chars) {
    $validCharNumber = strlen($chars);
    for ($i = 0; $i < $length; $i++) {
        $str .= $chars[rand(0, $validCharNumber - 1)];
    }
    return $str;
}

它在我的本地服务器和我们使用的其他一些开发服务器上运行正常。但是在最终服务器上,我不断收到以下消息:解析错误:语法错误,意外'''

我在google上搜索但是我无法获得准确的结果,因为当我搜索引号时,我无法使用引号更准确。

我也在这个代码块上收到相同的错误消息

"last_update" => Array("display" => "return toDate('$1', 'd/m/Y H:i:s');")

哪里出错?我是否错过任何双引号或其他类型的配置?

2 个答案:

答案 0 :(得分:3)

这是php版本问题。您可以使用在线工具检查代码中的php版本兼容性,这些工具允许在不同版本上运行代码。

例如:http://3v4l.org/60NfG

在函数参数中用双引号字符串处理'$'。

http://3v4l.org/lvm9I

答案 1 :(得分:0)

我只有这个错误:

注意:未定义的变量:第7行的D:\ wamp \ www \ index.php中的str

通过在f​​or循环之前添加$str ='';来修复它。其他一切都很好。

我的PHP版本是5.4.12