$games = $row[Games];
foreach(explode(",",$games) as $game){
echo "$game <br/>";
}
$row[Games] = 'Game1,Game2,Game3,Game4,'
我想获得sizeof($游戏)。如果它小于2,它将起作用,否则它将始终为2.“foreach”的输出是这样的:
Game1
Game2
Game3
Game4
答案 0 :(得分:0)
count($games)
输出数组中的项目数。
答案 1 :(得分:0)
您可以使用来计算数组的元素。
$row['Games'] = 'Game1,Game2,Game3,Game4,'
$games = explode(",",$row['Games']);
echo count($games);
foreach($games as $game){
echo "$game <br/>";
}
您的数组声明中应该是'
或"
。否则你有一个常数。
我不知道您的数据是否来自数据库。但是在数据库中保存逗号分隔值并不是一个好主意。您应该规范化表格。非常讨厌改变你的价值观有这样的清单。
答案 2 :(得分:0)
使用rtrim首先从字符串中删除尾随逗号。
$cleanString = rtrim($games, ",");
echo count(explode(",", $cleanString))
输出:
4
当explode
拆分字符串时,由于尾随逗号,数组如下所示:
["game1", "game2", "game3", "game4", ""]
当在网络浏览器上回显时:
game1<br />
game2<br />
game3<br />
game4<br />
<br />
但最后一行在浏览器上不可见。
答案 3 :(得分:0)
尝试这样:你的数组声明中有一个错误。它应该是$ row [&#39; Games&#39;]而不是$ row [游戏]
<?php
$row['Games'] = 'Game1,Game2,Game3,Game4';
$games = $row['Games'];
$game = explode(',',$games);
print_r($game); // output: Array ( [0] => Game1 [1] => Game2 [2] => Game3 [3] => Game4 )
echo count($game); // output : 4
?>