Php 如何获取特定数组ID的值

Php 如何获取特定数组ID的值,php,arrays,if-statement,Php,Arrays,If Statement,我有一个名为$fields的数组。如果我这样做: foreach ($fields as $id => $field) { print $id."<br />"; } 我知道这很简单,但我的大脑就是想不出答案,而且我似乎无法用谷歌搜索正确的术语。如何将foreach封装在基于处理哪个id的if语句中 伪代码将是: if($fields['field_session_number'] == 'S2') { foreach($fields as $id=>$fi

我有一个名为$fields的数组。如果我这样做:

foreach ($fields as $id => $field) {
  print $id."<br />";
} 
我知道这很简单,但我的大脑就是想不出答案,而且我似乎无法用谷歌搜索正确的术语。如何将foreach封装在基于处理哪个id的if语句中

伪代码将是:

if($fields['field_session_number'] == 'S2') {
   foreach($fields as $id=>$field) {
      print $field->content;
   }
}

基本上,我处理的是$fields数组中返回的一条数据记录。如果正在处理的字段的id为S2,我只想打印出单个字段属性(
$field->content
$field->prefix
),如果您想获得具有特定键的元素,您不必进行循环-只需获得它即可

$field = $fields['field_session_number'];
echo $field->content;
echo $field->prefix;
如果ID不是数组键,而是与内容或前缀相同,则需要循环:

foreach ($fields as $field) {
    if ($field->id === 'S2') {
        echo $field->content;
    }
}

我不知道“正在处理的字段的id”是什么意思。伪代码可能已经可以工作了,但我想你不想迭代“field\u session\u number”键?@wallyk我认为session\u nr是idIt,如果你能显示
print\r($fields)
@wallyk=id是$id变量的结果,它会有所帮助。当我使用foreach循环时,第一个数组项的$id是field\u session\u number。我需要能够有条件地运行foreach。
foreach ($fields as $field) {
    if ($field->id === 'S2') {
        echo $field->content;
    }
}