次のような配列があります。
var localproducts = [packageId, categoryId, dataId];
each 関数を使用してこの配列を調べ、すべての dataIds を特定の packageID を持つすべてのアイテムの別の新しい配列に格納します。助けてくれてありがとう!
私が理解していることから、オブジェクト配列があるため、プロパティを持つオブジェクトをpackageId
3 に保つ必要がありますarray_filter
。
コードは基本的に次のようになります。
function filter($var) {
return $var->packageId == 3;
}
$filtered_values = array_filter($localProducts, filter);
次のようにフィルター関数を変更するだけで、1 つまたは複数の配列に対して同じことができます。
function filter($var) {
return $var['packageId'] == 3;
}
ここで、値のみを含む新しい配列を作成する場合はdataId
、単純なforeach
.
var $dataIds = array();
foreach($localProducts as $prod) {
if($prod->packageId == 3) {
$dataIds[] = $prod->dataId;
}
}