[英]In PHP, how can I use a variable as the value in a key=>value pair when defining a public variable for a class?
[英]How can I check if a key/value pair exists in php?
我得到了每个运动员的学校名单。 如果一个运动员在对象中的状态为committed: true
,我只想显示那个学校。 否则,我想返回所有属性。
这是我的数据的样子:
...
"offers": [
{
"school": "Foo School",
"committed": true
},
{
"school": "Bar School",
"committed": false
}
]
...
在上面的例子中,我只想显示“Foo School”。 但是如果两个committed
属性都是false
我想显示“Foo Schoo”和“Bar School”。
这是我目前拥有的,但无论如何都会返回。
foreach ($object['athlete']['offers'] as $offer) {
if (isset($offer['committed']) && $offer['committed'] == 1) {
// return single school
} else {
// push into array & return?
}
}
感谢您的任何建议!
我想这就是你要找的,如果我错了,请纠正我。 如果所有这些都是假的,那么它返回所有。 如果一个或多个为真,则返回第一个为真的:
<?php
$offers = array(
array("school" => "Foo School",
"committed" => true
),
array(
"school" => "Bar School",
"committed" => false
));
$fullReturn = "";
$flag = false;
foreach ($offers as $offer) {
if (isset($offer['committed']) && $offer['committed']) {
echo $offer['school'];
$flag = true;
break;
} else {
$fullReturn .= $offer['school'] . "<br />";
}
}
if (!$flag) {
echo $fullReturn;
}
?>
如果您有两个数组并且您想检查 $haystack 数组是否具有最小 $needle 数组的元素并且它们匹配与否,那么您可以使用该函数
function array_match($needle, $haystack){
$haystack = (array) $haystack;
$needle = (array) $needle;
foreach ($needle as $key => $value) {
if( trim($value) != trim($haystack[$key]) ){
return false;
}
}
return true;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.