php - 无法使用 PHP 从 Oracle 数据库写入我的 csv 文件
问题描述
我想我正确使用了 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);
解决方案
while 循环一次获取一个结果行。如果您更改为使用odbc_fetch_array($result)
,您将获得一个 Assoc 数组,与您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);
推荐阅读
- node.js - 如何使用firestore在node.js中获取谷歌云函数执行事件
- activerecord - 如何在 Yii2 中检查模型是否更新、插入或删除
- javascript - BootStrap glyphicon-calender 图标与输入文本框分离
- css - 如何使弹性项目占据容器的整个宽度,以便其他项目位于下方?
- python - 使用 asyncio 的简单非阻塞无限循环
- java - 使用 Gradle 和 IntelIJ 时 Kotlin 中未解决的引用“java”
- android - ViewPager 中包含多个线程的片段
- android - 如果文本很长,如何获取水平滚动的一行的 EditText
- postgresql - 将毫秒转换为字符串日期 dd MMM YYYY 并在 LIKE 子句中使用它
- excel-formula - Sumproduct 嵌套在 countifs 中