首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将csv追加到php数组

问将csv追加到php数组
EN

Stack Overflow用户
提问于 2012-07-12 23:33:05
回答 3查看 138关注 0票数 1

我不能让这个PHP数组为我返回任何值。CSV表由10个数字组成。我得到的唯一输出是"array“

代码语言:javascript
复制
$data = array();
if (($handle = fopen("fullbox.csv", "r")) !== FALSE) {
    while(($row = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $data[] = $row;
    }
}

echo $data[1];

任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

发布于 2012-07-12 23:34:59

您的代码已经正确。

$data是多维数组,每个元素本身就是一个数组。当您使用echo $data[1]时,您要求PHP编写一个更复杂的数组变量的字符串表示,PHP通过输出array而不是其内容来处理该变量。

取而代之的是,使用var_dump()查看它包含的内容。

代码语言:javascript
复制
var_dump($data);

可以通过如下方式访问单个值:

代码语言:javascript
复制
echo $data[1][0];

注释后编辑

如果CSV每行只包含一个值,则在追加到输出数组时直接通过$row[0]访问它,以便将其作为一维数组:

代码语言:javascript
复制
if (($handle = fopen("fullbox.csv", "r")) !== FALSE) {
  while(($row = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $data[] = $row[0];
  }
}
// $data is now a 1D array.
var_dump($data);
票数 3
EN

Stack Overflow用户

发布于 2012-07-12 23:36:02

$data1是$data变量中的第二个元素($data将是第一个)。

您得到的是一个数组而不是一个值,这就是PHP回显单词array的原因。

这应该能更好地工作。

代码语言:javascript
复制
$data[0][0]

您的$data变量是一个多维数组,并且您只深入了一层。

票数 0
EN

Stack Overflow用户

发布于 2012-07-12 23:36:26

这是因为$data1 是由CSV行中的10个数字组成的数组,所以$data现在是一个多维数组。echo $data[1][0]将输出其中一个数字

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11455338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档