2

我从一个 json 数组中获得了多个字符串,我将它们放入另一个数组中,如下所示:

$myArray = $anotherArray = new array();

if($stringA != ""){
     $myArray[] = $stringA;
}elseif($stringB != ""){
     $myArray[] = $stringB;
} //so on...

我想将所有这些都放在数据库中的单个列中,因此我将字符串推送到 1 个数组中。然后,我使用 implode 转换数组:

if(is_array($myArray)){
    $newString = implode(" ", $myArray);
}

这在我的本地主机中运行良好,但是当我们将文件移动到服务器并通过 cron 运行它时,我收到了数组到字符串转换的通知。

我在同一个文件中对不同的字符串集使用了类似的代码,但是那个没有出错,所以我不确定这里发生了什么。

我也尝试在 implode 函数中使用 array_values,如下所示:

$newString = implode(" ", array_values($myArray));

但这也没有用。我不确定这是否意味着什么,但在某些情况下,除了常规文本之外,我还打印了 Array 一词。所以我的问题是,这个错误的可能原因是什么,我该如何解决?

4

1 回答 1

7

你可以json_encode你的数组吗?

$newString  = json_encode($myArray);

并且通知可能是因为您的一个字符串可能是一个数组,而您可能在 localhost 上看不到它,因为您不能在 php.ini 中打开错误报告。

尝试将此添加到您的 cron 作业脚本中。

ini_set('display_errors','On');
error_reporting(E_ALL);
于 2013-10-11T07:48:59.883 回答