players
将为空或逗号分隔的列表(或单个值)。检查它是否为空的最简单方法是什么?我假设我可以在将$gameresult
数组提取到$gamerow
中后立即执行此操作?在这种情况下,如果$playerlist
是空的,那么跳过分解它可能会更有效,但是为了便于讨论,我如何检查数组是否也是空的?
$gamerow = mysql_fetch_array($gameresult);
$playerlist = explode(",", $gamerow['players']);
发布于 2010-02-07 13:32:46
如果只需要检查数组中是否有任何元素
if (empty($playerlist)) {
// list is empty.
}
如果您需要在检查之前清除空值(通常是为了防止explode
奇怪的字符串):
foreach ($playerlist as $key => $value) {
if (empty($value)) {
unset($playerlist[$key]);
}
}
if (empty($playerlist)) {
//empty array
}
发布于 2012-08-30 09:21:56
空数组在PHP中是假的,所以你甚至不需要像其他人建议的那样使用empty()
。
<?php
$playerList = array();
if (!$playerList) {
echo "No players";
} else {
echo "Explode stuff...";
}
// Output is: No players
PHP的empty()
确定一个变量是否不存在或有一个假值(如array()
、0
、null
、false
等)。
在大多数情况下,您只需要检查!$emptyVar
。如果变量可能尚未设置,并且您不习惯触发E_NOTICE
,则使用empty($emptyVar)
;我认为这通常不是一个好主意。
发布于 2010-02-07 13:31:59
https://stackoverflow.com/questions/2216052
复制相似问题