2

次のように別の配列に入れたjson配列から取得した複数の文字列があります。

$myArray = $anotherArray = new array();

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

これらすべてをデータベースの 1 つの列に配置したいので、文字列を 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);

また、おそらく、文字列の 1 つがおそらく配列であり、php でエラー報告を有効にしてはならないため、ローカルホストではこれが表示されない可能性があります。

これを cron ジョブ スクリプトに追加してみてください。

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