我正在阅读有关php的书,这是根据数组类型打印数组元素的任务;所以我创建了数组$arr = array (5, 'str', 4, 'str1', -100, 10);
,然后使用foreach
语句尝试打印整数元素
foreach ($arr1 as is_integer($arrelem))
{
print $arrelem;
}
但这给了我一个错误Fatal error: Can't use function return value in write context in
.我确定算法有问题,但我需要有关如何理解这些算法的建议
不允许
foreach ($arr1 as is_integer($arrelem))
这样写:
foreach ($arr1 as $arrelem) {
if (is_integer($arrelem)) {
print "int:" . $arrelem;
} else if (is_string($arrelem)) {
print "string:" . $arrelem;
} else {
print "other:" . $arrelem;
}
}
如果这是用于调试,您也可以使用 var_dump
,它将为您提供变量的类型和值。
$integerValues = array_filter($array1,'is_integer');
$booleanValues = array_filter($array1,'is_bool');
等
这不是正确的语法,在关键字之后,因为您可以只放置变量的名称。
您可以使用此示例
$arr = array(5,'str',4,'str1',- 100,10);
示例 1 - Waygood
foreach ($arr as $var) {
print $var . ": ";
echo gettype($var), "'n";
}
例 2
foreach ( $arr as $var ) {
print $var . ": ";
if (is_integer($var)) {
if ($var < 0) {
print "Negative Integer 'n";
} else {
print "Positive Integer 'n";
}
}
}