if语句将回显包含"A"的数组的字符串?
法典:
<?php
$students=array(
array('roll_no'=>1,'name'=>'Sagar','percentage'=>78,'grade'=>'A'),
array('roll_no'=>2,'name'=>'Rahul','percentage'=>50,'grade'=>'C'),
array('roll_no'=>3,'name'=>'Emir','percentage'=>60,'grade'=>'B'),
);
foreach($students as $array)
{
foreach($array as $value)
{
if($value['grade']='A')
{
echo $value;
}
}
}
?>
输出:
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
Aagar
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
A
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
Aahul
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
A
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
Amir
Warning: Cannot use a scalar value as an array in C:'xampp'htdocs'php'Assignment41C.php on line 11
Warning: Illegal string offset 'grade' in C:'xampp'htdocs'php'Assignment41C.php on line 11
A
你不需要第二个foreach
.每个$array
值存储所有key => value
对。所以你只需要检查grade
键的值:
foreach ($students as $array) {
// note a double `==` which is a comparison operator
if ($array['grade'] == 'A') {
// print_r instead of `echo` cause `echo` won't output array properly
print_r($array);
}
}
看起来你在这里使用了额外的循环。此外,您可能需要重新检查此$value['grade']='A'部分。在 if 条件中,单个 = 表示赋值操作。使用 == 或 ===。
尝试此操作以仅打印成绩:
foreach ($students as $array) {
if($array['grade']== 'A') {
echo $array['grade']; // To show the grade only
}
}
尝试打印所有字段:
foreach($students as $array){
if($array['grade']== 'A'){
foreach($array as $k => $v) {
echo "$k : $v";
echo "<br/>";
}
}
}
希望这有帮助。
和平! xD