我意识到这个问题已经被问了很多次,但我还没有找到解决这个问题的方法。
我正在使用pChart(pData v2.1.4(。它在运行 php v5.6.30 的托管站点上运行良好,但我在运行 php v7.2.5 的 XAMMP 上收到具有相同代码的致命错误。
错误是指 pData 中的这一行:(注意:pData 是由第三方编写的类,因此不是我的代码(
function convertToArray($Value)
{ $Values = ""; $Values[] = $Value; return($Values); }
关于如何解决问题的任何建议?我尝试在代码前面将$Values声明为数组,但这似乎会导致更多错误。
另外,这个 php 版本是否相关,如果我的托管站点移动到较新版本的 php,我将开始出现错误?
您已将$Values
声明为字符串:
$Values = "";
修复替换为数组的问题:
function convertToArray($Value)
{
$Values = [];
$Values[] = $Value;
return $Values;
}
但是,在我看来,没有理由使用此功能。 在您的代码中,只需定义一个相同变量的数组:
$Value = [$Value];
它将执行与您的函数相同的操作。
你不能将字符串转换为数组 ($Values = ""; $Values[] = $Value;
(,所以正确的变体:
function convertToArray($value) {
return [$value];
}
值应声明为 数组 试试这个。
function convertToArray($Value){
$Values = [];
$Values[] = $Value;
return $Values;
}
试试这个,
function convertToArray($Value){
$Values = array(); // initialize
if ( isset($Value) ) $Values[] = $Value;
return($Values);
}
让我知道它是否有效。