gpt4 book ai didi

PHP Foreach 循环和 DOMNodeList

转载 作者:可可西里 更新时间:2023-11-01 00:38:30 25 4
gpt4 key购买 nike

我正在尝试确定以 DOMNodeList 集合作为种子的 foreach 循环的结束。目前,我正在使用 for 循环,希望避免在那里出现“魔数(Magic Number)”。我知道只有 8 列,但我希望代码对其他应用程序通用。

是否可以将其转换为 Foreach 循环?我已经尝试了 end() 和 next() 函数,但它们没有返回任何数据,我怀疑它们只适用于数组而不是这个 DOMNodeList 集合。

代码正在构建一个没有尾随 ',' 的 CSV 文件

当前输出为:

“值 1”、“值 2”、“值 3”、“值 4”、“值 5”、“值 6”、“值 7”、“值 8”

这是一个代码示例:

$cols = $row->getElementsByTagName("td");
$printData = true;

// Throw away the header row
if ($isFirst && $printData) {
$isFirst = false;
continue;
}

for ($i = 0; $i <= 8; $i++) {
$output = iconv("UTF-8", "ASCII//IGNORE", $cols->item($i)->nodeValue);
$output2 = trim($output);
if ($i == 8) {
// Last Column
echo "\"" . $output2 . "\"" . "\n";
} else {
echo "\"" . $output2 . "\"" . ",";
}
}

最佳答案

您可以使用:

$cols->length

检索 DOMNodeList 中的项目数。

参见 http://php.net/manual/en/class.domnodelist.php

编辑:如果您将代码更改为此,则不必担心尾随逗号或长度:

$output = array();
foreach ($cols as $item) {
$output = iconv("UTF-8", "ASCII//IGNORE", $item->nodeValue);
$output2 = trim($output);

$output[] = '"' . $output2 . '"';
}
$outputstring = implode(',', $output);

关于PHP Foreach 循环和 DOMNodeList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2016685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com