3

PHP に慣れていないため、配列とそのサブデータへのアクセスで問題に直面しています。

$form['signatories']['signatory1'] = array(...);

上記の行で作成された配列への「ポインター」を作成する必要があります。次のように動作することを期待していました。

$cluster = $form['signatories']['signatory1'];

私が同じ「メモリ空間」にアクセスしていることをテストすると、私が間違っていることが証明されます。

$cluster['signatory_name'] = array(...)
// $form['signatories']['signatory1'] has no elements
// $cluster has a sub element

クラスターのように、私が指し示す配列のコピーです。

どのように進めればよいですか?いくつかのブログで言及されているように、「&」参照記号を使用してみましたが、役に立ちませんでした。

ありがとう!J.

4

2 に答える 2

6

デフォルトでは、PHP での割り当ては、オブジェクトを除き、参照ではなく値によるものです。

元の配列への参照を渡したい場合は、参照を明示的に作成する必要があります。

$cluster = &$form['signatories']['signatory1'];

PHP マニュアルの参照による割り当てを参照してください

于 2012-06-18T14:11:54.353 に答える
1

参照=&による割り当てに使用できます:

$cluster =& $form['signatories']['signatory1'];

事実上、これは 2 つの操作です。1 つ目は&$form['signatories']['signatory1']、 への参照を提供するものです$form['signatories']['signatory1']。2 つ目は=、明らかに への参照を割り当てるもの$clusterです。

于 2012-06-18T14:11:20.457 に答える