2

要素を持つPHP配列があります:

$myarray = array ( "tom", "dick", "Harry" );

。配列を3要素のサイズに固定しておく必要があります。配列が次のようになるように、新しい要素「jerry」を追加する必要があります

 $myarray = array ( "jerry", "tom", "dick");

ある意味で、要素を移動していると、4番目の要素がドロップアウトし、最新の要素が最初に表示されます。これらすべてを手作業で記述したり、要素の番号を付け直したりすることができました。

しかし、これを行うためのより迅速な方法があるかどうか疑問に思いました。

どうもありがとう!J

4

3 に答える 3

7

array_popこれを行う1つの方法は、とを利用することですarray_unshift

# Pop the last element off the array
array_pop($myarray);

# Insert the new value
array_unshift($myarray, "jerry");

array_mergeまたは、およびを使用できますarray_slice

$myarray = array_merge(array("jerry"), array_slice($myarray, 0, 2));

これらの方法はどちらもキーをリセットするため、0から2に番号が付け直されます。

于 2011-09-23T11:23:24.593 に答える
1

SplQueueを確認することをお勧めします。新しい要素を追加するたびに、要素の数がxより大きいかどうかを確認し、必要に応じてデキューします。

于 2011-09-23T11:34:11.953 に答える
0
$myarray = array ( "tom", "dick", "Harry" );
array_pop( $myarray ); //remove the last element
array_unshift( $myarray, "jerry" ); //prepend the new element
于 2011-09-23T11:30:05.093 に答える