如何检查和查找匹配一系列PHP数组的选择框的值,例如
<select id="person" name="person">
<option value="jane">Jane</option>
<option value="julia">Julia</option>
</select>
PHP数组
$person_1 = ["Id"=> "1", "name"=>"Jane", "age"=>"23" ]
$person_2 = ["Id"=> "2", "name"=>"Julia", "age"=>"29"]
如果用户选择jane,则检查这两个数组的值。如果它与一个印刷品匹配该特定人的年龄。
答案 0 :(得分:3)
使用多维数组,以便循环查找匹配的名称。
$people = [
["Id" => "1", "name"=>"Jane", "age"=>"23" ],
["Id" => "2", "name"=>"Julia", "age"=>"29"]
];
foreach ($people as $person) {
if ($person['name'] == $_POST['person']) {
echo "Age is {$person['age']}";
break;
}
}
每当您发现自己使用$person1
和$person2
这样的数字名称创建变量时,您肯定会使用数组将它们全部收集到一个变量中。
如果会有很多人,那么使$people
成为一个关联数组会更有效:
$people = [
"Jane" => ["Id" => "1", "name"=>"Jane", "age"=>"23" ],
"Julia" => ["Id" => "2", "name"=>"Julia", "age"=>"29"]
];
然后你不需要循环,只需:
$person = $people[$_POST['name']];