「foreach」ループ内で変数を参照しているときに問題が発生します。
これは私の CakePHP コード スニペットです: http://pastebin.com/s7qtYahA
最初のコードは、同じ数の内部「foreach」ループ反復に対して二重割り当てを割り当てます。
しかし、2番目のコードはすべてうまくいきます。誰でもひねりを明確にしてもらえますか..?前もって感謝します。:)
「foreach」ループ内で変数を参照しているときに問題が発生します。
これは私の CakePHP コード スニペットです: http://pastebin.com/s7qtYahA
最初のコードは、同じ数の内部「foreach」ループ反復に対して二重割り当てを割り当てます。
しかし、2番目のコードはすべてうまくいきます。誰でもひねりを明確にしてもらえますか..?前もって感謝します。:)
array() を使用して $values がリセット/クリアされているため
<?php
foreach($fields as &$field){
$fieldValues = $this->controller->DomainFormFieldValue->find('all', array('conditions' => array('domain_form_field_id' => $field['DomainFormField']['id'])));
foreach($fieldValues as $fieldValue){
$field['DomainFormFieldValue'][] = $fieldValue['DomainFormFieldValue'];
}
}
unset($field);
?>
2nd code:
<?php
foreach($fields as &$field){
$fieldValues = $this->controller->DomainFormFieldValue->find('all', array('conditions' => array('domain_form_field_id' => $field['DomainFormField']['id'])));
$values = array(); /* Array has been resetted */
foreach($fieldValues as $fieldValue){
$values[] = $fieldValue['DomainFormFieldValue'];
}
$field['DomainFormFieldValue'] = $values;
}
unset($field);
?>