PHPオブジェクトまたは配列を文字列に変換する方法
PHPデータベースクエリを実行する場合、2つの関数があります
oci_fetch_object と oci_fetch_array() はそれぞれオブジェクトと配列型の戻り値を返します。変換するにはどうすればよいですか?
$results = "[";
$row = oci_fetch_array($stmt); <- ここで oci_fetch_object を使用することもできます
$結果 += ? ? ? <-ここで戻り値 $row を文字列型に変換する場合、(string) を試してみましたが、うまくいきませんでした
$results = "]";
-----最善の解決策---------
while($row = oci_fetch_array($stmt)) {
$result[] = $row;
}
$result = json_encode($result);
-----その他の解決策---------
必要になる可能性があるのは json_encode
-----その他の解決策---------
試してみましたが、うまくいきません。 。 。
実際、私の目的は、oci クエリの戻り値を json 文字列
に変換することです------その他の解決策------ -- -形式を確認してください。オブジェクトまたは配列を json 形式に変換したいと考えています。 。
上の階の正解は、json を json_encode に変換し、json を配列に変換するのは json_decode
です。
自分で継ぎ合わせたい場合は、それが可能です。配列を文字列に変換するには、implode
を使用するだけです------その他の解決策------------------投稿者のデータを投稿
-----その他の解決策---------$results = "[ ";
$usercount = 0;
$row = oci_fetch_array($stmt);
if($row){
$results += $row;
$usercount++;
}
一方 (1) {
$row = oci_fetch_array($stmt);
if(!$row) ブレーク;
$results += ","+$row
$usercount++;
}
$結果 += "]"
これは私のコードです。結果の $results は、json 配列ではなく 0 です。クエリには複数の戻り値があります。
-----他の解決策-------- --- --------
この変更後、「スカラー値を配列として使用できません」というプロンプトが表示され、その後 $result=""
------その他の解決策------------- --- -----元の $results = "[";!
------その他の解決策---------
削除しました。
と書いてください
while($row = oci_fetch_array($stmt)) {
$result[] = $row;
}
$result = json_encode($result);
このセクションは完了し、$result
を返します。
$result[] = $row; プロンプト
ではスカラー値を配列として使用できません------その他の解決策----- -
さて、関数の先頭に $result の定義があることに気づきました。それを削除してください