我试图使用脚本。当我去使用它时,我收到以下错误:
警告:explode()期望参数2为string,第16行的/myred/include/functions.php中给出的数组
警告:in_array()期望参数2为数组,在第17行的/myred/include/functions.php中给出为null
现在,下面是functions.php的第16行和第17行。任何人都知道它有什么问题吗?
$reserved = explode("--",$reserved);
if (in_array("$dname", $reserved)) {
$errormsg .= "$text_17<br>";
}
return $errormsg;
供参考,这是我正在使用的脚本:http://www.milliscripts.at/downloads/myred_14_mysql_5.zip
谢谢!
答案 0 :(得分:2)
很简单,在第16行,你试图爆炸数组,查看explode
的php手册,它会按你指定的任何分隔符拆分字符串。
由于第16行上的$reserved
失败,第17行也因为$reserved
未正确设置而失败。
发布更多代码,我们需要查看首次声明$reserved
的位置。
答案 1 :(得分:2)
这一行是造成你困境的原因:
$reserved = explode("--",$reserved);
从错误消息中可以看出$reserved
已经是一个数组。我要猜测它,并说初始$reserved
数组的每个元素都是包含要分割的"--"
的字符串。
如果这个假设是正确的,您需要使用$reserved
将implode()
转换为字符串:
$reserved = explode("--", implode($reserved));
这将解决错误,并可能为您提供所需的结果。