いくつかの値を返すmysqlクエリがある場合、これらの値は「parent_id」によって分類されます。「parent_id」にはおよそ3〜5個の値があります。whileループでは、各'parent_id'の最初の値のみをエコーしたいと思います。どうすればこれを行うことができますか?
「この変数がこの値を持つのが初めての場合は、何かを行う」のようなもの
いくつかの値を返すmysqlクエリがある場合、これらの値は「parent_id」によって分類されます。「parent_id」にはおよそ3〜5個の値があります。whileループでは、各'parent_id'の最初の値のみをエコーしたいと思います。どうすればこれを行うことができますか?
「この変数がこの値を持つのが初めての場合は、何かを行う」のようなもの
値を配列に保持し、新しい値が配列にあるかどうかを確認できます。
$SeenValues=array();
foreach($AllValues as $Value){ //Or some other loop
if (!in_array($Value, $SeenValues)){
//Do something
//Add new value to array
array_push($SeenValues, $Value);
}
}
whileループに条件を追加するだけです...
$old_id = '';
while($row = $db->fetch_object()){
if($row->parent_id != $old_id){
//new parent_id
$old_id = $row->parent_id;
//... do stuff ...
}
}