0

我的代码如下

$aNewCodes = array("93", "355", "213");
$aServiceProviderId = array();
$oTerminationRate = new TerminationRate();

foreach ($aNewCodes as $iNewCodesKey => $iNewCodesValue)
{
    $oTerminationRate->GetServiceProviders($aServiceProviderId, $iNewCodesValue);

    foreach($aServiceProviderId as $iProviderKey => $iProviderValue)
    {
        echo $iNewCodesValue." :: ".$iProviderValue."<br>";
    }
}

它给了我这样的输出 -

93 :: 1
93 :: 2
355 :: 1
355 :: 2
355 :: 1
355 :: 2
213 :: 1
213 :: 2
213 :: 1
213 :: 2
213 :: 1
213 :: 2

其实我期待这样的输出 -

93 :: 1
93 :: 2
355 :: 1
355 :: 2
213 :: 1
213 :: 2

尝试了很多来获得该输出,但没有成功。我错过了什么?

4

1 回答 1

1

您的问题是您没有aServiceProviderId在循环的每次迭代中从数组中删除以前的条目。放线

$aServiceProviderId = array();

在第一个循环内 - 就在之前

$oTerminationRate->GetServiceProviders($aServiceProviderId, $iNewCodesValue);

你应该没事。

于 2012-04-17T10:36:37.813 回答