$array = array('a', 'b','c');
unset($array[0]);
var_dump($array);
Yields:
array(1) {
[1]=>
'b'
'c'
}
、配列を削除する[0] [ 'BB'、 'CC'](無空のキー)を取得する:配列からキーを削除してインデックスを更新するには?
array(1) {
'b'
'c'
}
$array = array('a', 'b','c');
unset($array[0]);
var_dump($array);
Yields:
array(1) {
[1]=>
'b'
'c'
}
、配列を削除する[0] [ 'BB'、 'CC'](無空のキー)を取得する:配列からキーを削除してインデックスを更新するには?
array(1) {
'b'
'c'
}
チェックこの:設定を解除した後
$array = array('a', 'b','c');
unset($array[0]);
$array = array_values($array); //reindexing
$array = array_splice($array, 0, 1);
を見てみましょう特定の要素(配列の途中の任意の要素ではない)を特に削除する場合は、array_shift()
が適切です。
+1、 '解除/ array_values'コンボより良い選択。 –
これはunset/array_valuesよりも優れた選択肢ですか?速度? – Bashevis
@Bashevis:速度の優位性がある、はい。間違いなくもっと重要なことですが、それはもっときれいで明確です。 'array_slice()'はこの正確なことをするように設計されています。あなたがその関数呼び出しを見たときに何が起こっているのか疑問はありません。 'unset(); array_values(); 'は同じことを成し遂げますが、2つの別々のステップで行います。これにより、読者は結果として' array_slice() 'を実行する方法であることがわかります。 – VoteyDisciple
array_values()がうまくいく –