私はodbc_execを使用して2つの異なるクエリの結果を収集し、2つのクエリの情報を組み合わせたJSONファイルを作成する必要がある場所を作成しようとしているWebアプリケーションを持っています。(PHP)ODBC結果セットの破棄を防ぐ方法は?
例(接続とクエリは省略) ...
$result = odbc_exec($c, $q);
$result1 = odbc_exec($c, $q1);
$resultRows = array();
$response = array();
while($row = odbc_fetch_array($result)) {
$tempResult = $result1;
$value = "0";
$other = $row['FIELD'];
while($row1 = odbc_fetch_array($tempResult)) {
if($row['FIELD'] == $row1 ['FIELD']) {
$value = $row1['FIELD'];
}
}
if($value != "0") {
$resultRows[] = array('FIELD'=>$value, 'OTHER'=>$other);
}
}
$response['data'] = $resultRows;
$fp = fopen('somefile.json', 'w');
fwrite($fp, json_encode($response));
fclose($fp);
の下にこれに伴う問題は、それが通じ最初のループの後にネストされたwhileループに入る停止するということです。私はodbc_fetch_arrayが結果セットからデータを削除することを知っています。なぜ私は大きなループごとにリセットされる結果セットへの参照を作成しようとしましたが、それでも問題は解決しません。
すべての情報は非常に役立つでしょう!前もって感謝します!
結果セットを一時的な値に割り当てることは、私がやっている方法でも結果セットをクリアしますか? –
whileループの直前に結果セットの行数をチェックすると、常に同じ値が返されます。 –