Невозможно записать в мой CSV-файл из базы данных Oracle, используя PHP - PullRequest
1 голос
/ 14 января 2020

Мне кажется, я правильно использовал fputcsv. Моя таблица базы данных содержит два столбца с датами и числами в обоих столбцах. Я использую базу данных oracle и сервер windows 2008.

//Connexion BDD Oracle
$connect = odbc_connect("oraclesrc", "xe", "sec123");

$query = "select * from timedata";

$result = odbc_exec($connect, $query);

$numOF = 0;
while(odbc_fetch_row($result)) {
    $emp = odbc_result($result, 1);
    $time = odbc_result($result, 2);
    $numOF++;
    echo $emp; 
    echo $time;     
}

$fp = fopen('testfile.csv', 'w');
foreach ($row as $result) {
    fputcsv($fp, $result);
}
fclose($fp);

odbc_close($connect);

1 Ответ

2 голосов
/ 14 января 2020

В то время как l oop извлекает строки результатов по одной за раз. Если вы перейдете на использование odbc_fetch_array($result), вы получите массив Asso c в точности так, как fputcsv() хочет его увидеть.

//Connexion BDD Oracle
$connect = odbc_connect("oraclesrc", "xe", "sec123");
$query = "select * from timedata";
$result = odbc_exec($connect, $query);

$fp = fopen('testfile.csv', 'w');

while($row = odbc_fetch_array($result)) {
    fputcsv($fp, $row);
}
fclose($fp);
odbc_close($connect);
...