0

私はodbcを介していくつかのデータを取得するためのそのようなコードを持っています...

     $data = odbc_exec($this->odbc_id, $odbc_query);
     odbc_longreadlen($data, 10485760); //10MB = 10485760
     while(odbc_fetch_row($data)) 
     { 
     $row = odbc_fetch_array($data);
     if($row['graphID'] != "") {
     $file_name_jp2 = "TI/" . $table_name . "/" . $row['graphID'] . ".jp2";
     $file = fopen ($file_name_jp2, "w");
     fputs($file, $row['graph']);
     fclose($file);
     set_time_limit(3600);
 }

 unset($row);
 }

しかし、いくつかの理由で、毎秒dbエントリをフェッチしています...しかし、なぜですか?私は何を間違って書いていますか?

すべてのデータをフェッチするために何を変更しますか?

4

1 に答える 1

2

odbc_fetch_arrayと の両方を使用しています。どちらodbc_fetch_rowか一方を使用する必要があります。次のようなもの:

while($row = odbc_fetch_array($data)) {
  // As you were..
}

そしてあなたの行を削除してください:

$row = odbc_fetch_array($data);
于 2013-02-23T18:15:08.057 に答える