私は、このような(私はそのサイズを定義していない)とPHPの配列を定義する場合:PHPの空の配列に要素を追加するには?
$cart = array();
私は単純に以下のものを使用して、それに要素を追加しますか?
$cart[] = 13;
$cart[] = "foo";
$cart[] = obj;
は、PHPの配列は、
cart.add(13)
例えば、addメソッドを持っていないのですか?
私は、このような(私はそのサイズを定義していない)とPHPの配列を定義する場合:PHPの空の配列に要素を追加するには?
$cart = array();
私は単純に以下のものを使用して、それに要素を追加しますか?
$cart[] = 13;
$cart[] = "foo";
$cart[] = obj;
は、PHPの配列は、
cart.add(13)
例えば、addメソッドを持っていないのですか?
両方array_push
、あなたが記載されている方法は動作します。
<?php
$cart = array();
$cart[] = 13;
$cart[] = 14;
// etc
?>
と同じです:それはarray_push
を使用し、ちょうどあなたが示唆したものを使用しない方が良いでしょう
<?php
$cart = array();
array_push($cart, 13);
array_push($cart, 14);
// Or
$cart = array();
array_push($cart, 13, 14);
?>
それはarray_pushと呼ばれています:あなたはarray_pushを使用することができますhttp://il.php.net/function.array-push
。 スタックのように、配列の最後に要素を追加します。
また、このようにそれを行っている可能性:
$cart = array(13, "foo", $obj);
。関数は単にオーバーヘッドを追加します。
//We don't need to define the array, but in many cases it's the best solution.
$cart = array();
//Automatic new integer key higher than the highest
//existing integer key in the array, starts at 0.
$cart[] = 13;
$cart[] = 'text';
//Numeric key
$cart[4] = $object;
//Text key (assoc)
$cart['key'] = 'test';
"ループ内の配列に複数の値を追加する場合は、repeat [] = statementsよりもarray_pushを使う方が速いです" http://www.php.net/manual/en/function.array-push.php# 84959 –
ユースケースが1つまたは複数のアイテムを一度に1つずつ追加しているかどうかは間違いありません。すべての値が同時に分かっている場合は、array_pushの表記法を使うのが一番良いのは、追加する必要がある項目の数を増やすと、関数呼び出しより性能が低下する可能性があるたびに、オーバーヘッド。選ぶときはいつものように、判断が行なわれるべきです。良い答え! – Mattygabe
1の要素はゼロベースの要素のインデックスを追加したい場合は、私はこれは同様に動作します推測:
// adding elements to an array with zero-based index
$matrix= array();
$matrix[count($matrix)]= 'element 1';
$matrix[count($matrix)]= 'element 2';
...
$matrix[count($matrix)]= 'element N';
私の経験に基づいて、キーが重要でない場合、あなた溶液(最高)結構です:
$cart = array();
$cart[] = 13;
$cart[] = "foo";
$cart[] = obj;
PHPのドキュメントで述べたように、あなただけなら毎回1つの要素(ループのような)または1つの要素を1回押すだけで、 '$ cart [] = 13'メソッドを使うのが最善です。なぜなら、同じ操作をする文字数が少ないだけでなく、 array_push()は関数呼び出しのパフォーマンスオーバーヘッドを課します。編集:しかし、素晴らしい答え。効果的に同じ、そして大半の用途ではパフォーマンスの違いに気付かず、そのニュアンスを知るのに役立ちます。 – Mattygabe
'$ cart [] = ...'の構文は、一見すると変数の割り当てのように見えますが、暗黙の配列_プッシュではありませんか? –
それは間違いなく私にはあります。私はなぜその** **割り当てではないの説明を気にしません。 – BrassApparatus