微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

循环每个查询行时删除最后一项

如何解决循环每个查询行时删除最后一项

我正在通过查询查询结果的PHP脚本创建一个csv文件

我得到的行:

foreach $result as $row

看起来像这样:

$row
array (
  'id' => '9','description' => 'a nice book','product-title' => 'Book title','references' => '4044782308578','id_bookstore' => 2,)

到目前为止一切顺利。 我的问题是,“ id_bookstore”要求数据库执行某些操作,而不是将其包括在csv文件中。

但是,如果我没有在fputcsv($file,$row,';');的csv文件中包含'id_bookstore',则会收到错误消息(标头中的元素数量与$ row中的元素数量不匹配)

我是否必须从$ row中删除每行中的'id_bookstore'=> 2以避免错误?如果可以,怎么办?

还是有另一种解决方法

代码在这里

$file = fopen(book.csv,'wb');
$delimiter = ';';

fputcsv($file,array("id","description","product-title","references"),$delimiter);

foreach ($result as $row) {
    
        fputcsv($file,';');
}

fclose($file);

非常感谢您。

解决方法

要从该行中删除“ id_bookstore”,只需使用未设置的功能,如下所示:

$file = fopen(book.csv,'wb');
$delimiter = ';';

fputcsv($file,array("id","description","product-title","references"),$delimiter);

foreach ($result as $row) {
        unset($row['id_bookstore']);
        fputcsv($file,$row,';');
}

fclose($file);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。