【问题标题】:Array to display correctly with column headers and values使用列标题和值正确显示的数组
【发布时间】:2011-12-18 19:14:48
【问题描述】:

如何让我的数组正确显示列标题和值?我应该先以某种方式将数组转换为字符串吗?但是如何让它与列和行一起显示呢?

我正在从一个发送到名为 $data 的数组的 CSV 文件中获取数据。

$data = curl_exec($ch);

当我回显 $data 时,它看起来像这样......

    CODE: 

echo $data[0];
echo $data[1];
echo $data[2];
echo $data[3];
echo $data[4];
echo $data[5];
echo $data[6];
echo $data[7];
echo $data[8];
echo $data[9];
echo $data[10];
echo $data[11];
echo $data[12];
echo $data[13];
echo $data[14];
echo $data[15];
echo $data[16];
echo $data[17];
echo $data[18];
echo $data[19];

输出:

"编号","优先级",

你已经知道 0=", 1=n, 2=u, 3=m 4=b, 5=e, 6=r, 7=", 8=, 等等。"number" ,

【问题讨论】:

    标签: php javascript html arrays curl


    【解决方案1】:

    CSV 文件以字符串形式返回,因此访问$data[1] 与访问substr($data,1,1) 相同。执行此操作的最简单方法是将其保存到文件中,然后使用fgetcsv

    file_put_contents('tmp.csv',$data);
    $row = 1;
    if (($handle = fopen("tmp.csv", "r")) !== FALSE) {
        while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
            $num = count($data);
            echo "<p> $num fields in line $row: <br /></p>\n";
            $row++;
            for ($c=0; $c < $num; $c++) {
                echo $data[$c] . "<br />\n";
            }
        }
        fclose($handle);
    }
    

    【讨论】:

    • 或简单地使用 str_getcsv():id.php.net/manual/en/function.str-getcsv.php
    • 哦,这是 PHP 的一个相对较新的补充 - 仅限 5.3.0 及更高版本 - 感谢@silent! :)
    • 感谢大家的帮助 - 我会研究这些选项 :) 我真的没有选择在本地将其保存为 CSV 所以我必须将 CSV 转换为数组/字符串/ 变量并从那里开始工作......我会看看我能做什么,再次感谢 :) 废话 - 抱歉,我没有 5.3.0 - 我有 PHP 版本 5.2.17
    • 除了将其存储为本地 temp.csv 文件然后再次读取之外,还有其他方法吗?我没有那个选项来保存我正在运行 php 的文件...
    • 您可以按照上面@silent 的建议使用str_getcsv() 吗?
    猜你喜欢
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 1970-01-01
    相关资源
    最近更新 更多