ように私はthis、this、およびthisのようないくつかの類似した質問にチェックしますが、私はむしろ、関数を呼び出しまたは変数を割り当てるよりも、深くネストされた配列内の操作によって企業価値を得ることができる、ということは明らかでないまま? $s
に応じ$arr['row']
の第1の位置に挿入するには、以下の例として関数の結果は、配列値
:
$s = true; //or false;
$arr = [
'key1'=>'val1',
'key2'=>'val2',
'row'=>[
function($s){
if($s) return array('x'=>'y',...);
else return null;
},
[
'row2a'=>'val2a',
'row2b'=>'val2b',
],
[
'row3a'=>'val3a',
'row3b'=>'val3b',
],
],
];
// Output:
Array(
...
[row] => Array
(
[0] => Closure Object
(
[parameter] => Array
(
[$s] =>
)
)
[1] => Array
(
[row2a] => val2a
[row2b] => val2b
)
...
は$arr['row'][0]
にClosure Object
ないarray('x'=>'y',...)
を得ました。または、配列内の操作で値を取得する方法はありませんが、関数を呼び出すか、変数を渡しますか?ありがとう。
私は、なぜあなたは、単にこれを実行することができないことを確認していません関数を配列作成の外に置いて、結果を必要な場所に置くだけですか?あなたはそのような構造を持ちたいと思う特別な理由はありますか? –
これは関数であり、このような場所がいくつかあるので、値を取得するためにほんの数のコードの外にもっと多くの関数を作成する必要があることを意味します。 – James