在Array中查找key并显示其值


Find key in Array and display the value

我有一个小问题与数组。我在用codeigniter。我想做的是这样的:

$studentSchool = $students->schoolId;
echo $shools->id[$studentSchool]->schoolName;

在foreach $students循环中,包含学校的数组是这样的:

Array ( [0] => stdClass Object ( [id] => 1 [schoolName] => Akademia Ekonomiczna ) [1] => stdClass Object ( [id] => 2 [schoolName] => Politechnika ) )

这些是我在php和codeigniter的第一步,所以请原谅:)

如果$schools是数组,则必须将其作为数组访问。它不会有id属性;

你应该建立你的$schools数组,使元素的索引对应于学校的ID。例如:

Array ( 
    [1] => stdClass Object ( [id] => 1 [schoolName] => ... ) 
    [2] => stdClass Object ( [id] => 2 [schoolName] => ... ) 
)

那么你可以这样做:

echo $schools[$studentSchool]->schoolName;

或者,如果学校按ID排序,并且ID是连续的,您还可以执行:

 echo $schools[$studentSchool - 1]->schoolName;

否则,您必须遍历数组以查找给定ID的正确条目,这是昂贵且不必要的。

这是你要找的吗?

foreach ($students as $student):
    // Prints the School name for this student
    echo $student->schoolName;
endforeach;

或者这个?:

// Prints the School name for the first student
echo $students[0]->schoolName
编辑:这就是你想要的?
$studentSchool = $students->schoolId;
echo $shools[$studentSchool]->schoolName;