|
Posted by Colin McKinnon on 06/09/06 17:33
Ramon wrote:
>
> I've made two classes (see below): "Product" and "ProductList".
> Class "Product" has some properties, including an ID prop to store it's
> database ID.
> Class "ProductList" contains an array of "Product" objects.
>
> My question is this:
>
> Is there some fancy way to retrieve a Product object from the
> ProductList's object by it's ID-property, without looping through the
> Products in the object array?
> (Please note: I need to find it by a property value, not by it's array
> index!)
>
Why not use the property value *as* the array index.
<snip>
> function add ($oProduct) {
> $this->m_oProductList[] =& $oProduct;
> }
function add(&$oProduct, $id=false) {
if ($id===false) {
$id=$oProduct->m_iID;
} else {
$oProduct->m_iID->setID($id);
}
$this->m_oProduct[$id]=$oProduct;
}
(I think the reference operator is redundant - like Perl, PHP arrays only
seem to hold scalars, so the value is assigned to the array by reference).
HTH
C.
[Back to original message]
|