我有这个TXT文件
Jose,Manuel
Maria,Antonia
Petra,Guzman
Josefa,Perdomo
等...
这个脚本
<?
$lines = file("./lista.txt") or die("No encuentro BD!");
$url_letra="a";
foreach($lines as $line_num => $line){
if(strpos($line,",")==0){
$obser=$line;
}else{
$datos = explode(",", $line);
$url_bd=$url_letra."|".$datos[1];
echo count($datos[1]);
}
}?>
此脚本打印“ 1111”,但我需要count元素或sum元素。对我来说正确的答案是4是我的计数元素。可以帮助获取这个数字4. Thx
答案 0 :(得分:0)
创建一个计数器,并在需要时增加它:
$count = 0;
foreach($lines as $line_num => $line){
if(strpos($line,",")==0){
$obser=$line;
}else{
$datos = explode(",", $line);
$url_bd=$url_letra."|".$datos[1];
$count++;
}
}
echo $count;
答案 1 :(得分:0)
您可以使用count函数对数组中的元素进行计数。您将获得所有行(CSV)并将其展开为数组,然后可以使用count对数组中的所有元素进行计数。 (您也有5个元素而不是4个)。
我更新了您的代码,请进行测试并告知我。希望对您有所帮助。
<?php
$lines = file("./lista.txt") or die("No encuentro BD!");
$total = 0;
foreach($lines as $line_num => $line){
$datos = explode(",", $line);
$url_bd=$url_letra."|".$datos[1];
$total += count($datos[1]);
}
print "Total: $total ";
?>
答案 2 :(得分:0)
更改此行代码,您一切顺利。
在您的代码中,您打印的所有行都不会像这样。
要获得数字,代码行count(file("./lista.txt"));
应该起作用。
...
$count = 0
if(strpos($line,",")==0){
$obser=$line;
}else{
$datos = explode(",", $line);
$url_bd=$url_letra."|".$datos[1];
$count += count($datos[1]);
}
echo $count;
...
答案 3 :(得分:0)
更改为
<?
$lines = file("./lista.txt") or die("No encuentro BD!");
$url_letra="a";
foreach($lines as $line_num => $line){
if(strpos($line,",")==0){
$obser=$line;
}else{
$datos = explode(",", $line);
$url_bd=$url_letra."|".$datos[1];
$result += count($datos[1]);
}
}
echo $result;
?>