上記のエラーをスローしているコードの次のセクションを見ています。
$rv = "'".str_replace("'", "''", str_replace(':', '\\x3a', str_replace('\\', '\\x5c', $value)))."'";
これを少し読みやすくするために、上記を個別のステートメントに分割しました。
$sq = "'";
$dq = "''";
$sr1_value = str_replace(':', '\\x3a', $value);
$sr2_value = str_replace('\\', '\\x5c', $sr1_value);
$sr3_value = str_replace($sq, $dq, $sr2_value);
$sr4_value = $sq.$sr3_value.$sq;
$rv = $sr4_value;
最後から 2 行目で、配列から文字列への変換エラーが表示されます。
その文字列を連結する他の方法 (つまり、ブラケット、substr_replace) を試しました。さらに、sr3_value で implode を使用してみましたが、「引数は配列でなければなりません」というエラーがスローされます。
最初は、エラーは sr3_value が配列であるように見えますが、それを引数として implode() に渡すと、そうではないことが示されるため、私は困惑しています。
何か案は?
ありがとう、
-ジョン