私が探しているのは、これらから何かを検索してすべてのフィールドを取り戻すための高速な方法です。たとえば、サンプルコード(以下に示す)でfavcolorsの「赤」を検索すると、子供のお気に入りの人の名前が返されます。これは、つまり、この場合、jhonとhomerを含む配列を返します。検索語が43歳の人を対象としている場合は、ホーマーを返します。
<?php
class person {
public $name;
public $kidsfavcolors=array();
public $age;
}
$people['jhon'] = new person;
$people['jhon']->name = "jhon";
$people['jhon']->age = 30;
$people['jhon']->kidsfavcolors['katherine']= "red";
$people['jhon']->kidsfavcolors['jimmy']= "yellow";
$people['homer'] = new person;
$people['homer']->name = "homer";
$people['homer']->age = 43;
$people['homer']->kidsfavcolors['bart']= "black";
$people['homer']->kidsfavcolors['lisa']= "red";