我有很多变量,我想确保它们不等于某个值。
if($post[0] !== "-" && $post[3] !== "-" && $post[8] !== "-" ...) {
// code to be executed
}
一个函数似乎是最聪明的解决方案,有点像:
function check_var($junk_value, $array) {
foreach($array as $arr) {
if($arr[$key]) == $junk_value) {
return false;
}
else {
return true;
}
}
}
$junk_value = "-";
$array = array($post[0], $post[3], $post[8], $hello);
check_var($junk_value, $array);
我对foreach循环不是很好,我不知道其他人是如何使用“$ key”的,但它输出的是它没有为我设置。我一直想知道人们如何使用“$ key”和“$ value”变量而没有定义它们。
编辑:我在这个问题上吸收了很多信息。在10分钟内,我觉得我知道的更多。谢谢你的所有答案。答案 0 :(得分:5)
if (!in_array('-', $post)) {
// code to be executed
}
你的代码应该是
function check_var($junk_value, $array) {
foreach($array as $val) {
if ($val == $junk_value) {
return false;
}
}
return true;
}
答案 1 :(得分:1)
回答你的问题
我一直想知道人们如何使用“$ key”和“$ value” 没有定义它们的变量
您在foreach声明中引用了键:
foreach($array as $key => $value) {
答案 2 :(得分:1)
使用时
foreach($array as $arr)
此处$arr
是值而不是键所以您需要检查
if($arr == $junk_value)
如果您还想要密钥,请使用
foreach($array as $key=>$value)
但是再次使用foreach,您同时拥有value
和key
,因此无需使用$arr[$key]