【发布时间】:2010-04-07 10:33:18
【问题描述】:
我在 PHP 中创建了一个函数,它调用 web 服务并解析结果,将值分配给变量并将它们全部作为数组返回。这一切都很完美,但是我遇到了需要“我的数组中的数组”
我分配的值如下:
$productName = $product->Name;
$productID = $product->ID;
$productArray = array(
'productName' => "$productName",
'productID' => "$productID"
);
return $productArray;
但是我现在有一条数据返回多个结果,所以我需要一个额外的数组来存储这些,我使用 foreach 循环从返回的 XML 中获取值,但是我希望能够将它们添加到具有名称的数组中,以便我可以在返回的数据中引用它们,这就是我遇到问题的地方...
$bestForLists = $product->BestFors;
foreach( $bestForLists as $bestForList )
{
$productBestFors = $bestForList->BestFor;
foreach( $productBestFors as $productBestFor )
{
$productBestForName = $productBestFor->Name;
$productBestForID = $productBestFor->ID;
}
}
我尝试使用以下代码为这些创建一个数组:
$bestForArray[] = (array(
"productBestForID" => "$productBestForID",
"productBestForName" => "$productBestForName"
));
然后最后将它们合并在一起:
$productArray= array_merge($productArray,$bestForArray);
如果我打印出我得到的返回值:
Array ( [productName] => Test Product [productID] => 14128 [0] => Array ( [productBestForID] => 56647 [productBestForName] => Lighting ) [1] => Array ( [productBestForID] => 56648 [productBestForName] => Sound ) )
我想给内部数组一个名称,以便我可以在我的代码中引用它,或者有更好的方法来做到这一点,目前我在我的 PHP 页面中使用以下内容来获取值:
$productName = $functionReturnedValues['productName'];
我想使用以下内容来访问我可以循环的数组:
$bestForArray = $functionReturnedValues['bestForArray'];
希望有人能帮忙
【问题讨论】: