ここには2つの機能があります。
public function bindOwnerToSites(){
error_reporting (E_ALL^ E_NOTICE);
foreach( $this->balance as $keysaa =>$key_valuesa)//getsitebalance
{
foreach( $this->sites as $keys=>$key_values)//getsites
{
if ($key_values['SiteID'] == $key_valuesa['SiteID'])
{
$this->arrays[$key_valuesa['SiteID']] = array('SiteID'=>$key_valuesa['SiteID'],'Balance'=>$key_valuesa['Balance'],'MinBalance'=>$key_valuesa['MinBalance'],'MaxBalance'=>$key_valuesa['MaxBalance'],'OwnerAID'=>$key_values['OwnerAID'],'GroupID'=>1);
}
}
}
print_r ($this->arrays,$return=null);
}
次のように表示されるbindOwnerToSites()の出力:
Array
(
[1] => Array
(
[SiteID] => 1
[Balance] => 2000
[MinBalance] => 1000
[MaxBalance] => 500
[OwnerAID] => 1
[GroupID] => 1
)
)
2番目の関数のコードは次のとおりです。
public function computeGHComponents()
{
error_reporting (E_ALL^ E_NOTICE);
foreach ($this->transaction as $t){
$amount = (float) $t['Amount'];
if (isset($this->totals[ $t['SiteID'] ][ $t['TransactionType'] ])){
$this->totals[ $t['SiteID'] ][ $t['TransactionType'] ] += (float) $amount;
} else {
$this->totals[ $t['SiteID'] ][ $t['TransactionType'] ] = (float) $amount;
}
}
foreach($this->totals as $key => $value)
{
$this->result[$key] = array("Deposit"=>$value['D'], "Redemption"=>$value['W'], "Reload"=>$value['R']);
}
print_r($this->result);
}
そして、computeGHComponents()の出力は次のように表示されます。
Array
(
[1] => Array
(
[Deposit] => 10000
[Redemption] => 500.00
[Reload] => 200.00
)
)
次に、2つの関数の結果をバインドする必要があります。自分で試してみますが、コードに問題があります。助けが必要です。すべてをここに配置するので、私が何を達成すると思われるかをよりよく理解していただければ幸いです。これがバインディングの私のコードです:
public function bindGHComponentsToSites()
{
error_reporting (E_ALL^ E_NOTICE);
$combined = array();
foreach($this->arrays as $key => $key_value){
foreach($this->result as $keys => $key_values){
$combined[$key_values['SiteID']] = array_merge((array)$key_value, (array)$key_values);
}
}
print_r($combined);
}
結果は次のようになります。どうすればこのような結果を得ることができますか?この質問にはもうしばらくお待ちください。私は初心者プログラマーですので、ご理解いただければ幸いです。
Array
(
[1] => Array
(
[SiteID] => 1
[Balance] => 2000
[MinBalance] => 1000
[MaxBalance] => 500
[OwnerAID] => 1
[GroupID] => 1
[Deposit] => 10000.00
[Redemption] => 500.00
[Reload] => 200.00
)
)
よろしくお願いします。適切な方法でご案内ください。