ホームページ >バックエンド開発 >PHPチュートリアル >PHP配列内の削除された要素のインデックスを再作成する方法、PHP配列要素のインデックス_PHPチュートリアル

PHP配列内の削除された要素のインデックスを再作成する方法、PHP配列要素のインデックス_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:18:54957ブラウズ

PHP配列内の削除された要素のインデックスを再作成する方法、PHP配列要素のインデックス

配列内の要素を削除したい場合は、直接 unset を使用できますが、今日見たものには驚きました

コードをコピーします コードは次のとおりです:

$arr = array('a','b','c','d');
unset($arr[1]);
print_r($arr);
?>

print_r($arr) を実行すると、最終的な結果は Array ( [0] => a [2] => c [3] => d ) になります

それでは、欠落している要素が埋められ、配列のインデックスが再作成されることを保証するにはどうすればよいでしょうか?答えは

です

array_splice():

コードをコピーします コードは次のとおりです:

$arr = array('a','b','c','d');
array_splice($arr,1,1);
print_r($arr);
?>

print_r($arr) の後の結果は A(www.jb51.net)rray ( [0] => a [1] => c [2] => d )

指定された要素を配列から削除します

array_search() の方が実用的です

array_search() 関数は in_array() と同じで、配列内のキー値を検索します。値が見つかった場合は、一致する要素のキーが返されます。見つからない場合は false を返します

コードをコピーします コードは次のとおりです:

$array = array('1', '2', '3', '4', '5');
$del_value = 3;
unset($array[array_search($del_value, $array)]);//この要素を削除するには unset を使用します
print_r($array);

出力
配列('1', '2', '4', '5');

ただし、配列のインデックスを再作成したい場合は、foreach を使用して削除された配列を走査してから配列を再作成する必要があります。これも可能です。

PHPで配列のキー値を削除してインデックス配列に変える方法

array_values() は入力配列内のすべての値を返し、数値的にインデックスを付けます。

array_value($arr['date']);

phpが二次元配列内の指定された項目を削除した後も、インデックスは順番に配置されていますか?

解決策 1: 新しい配列を作成します:

$newArr = array();

foreach($arr as $key=>$value){
$newArr[] = $value;

}

解決策 2:並べ替え
sort($arr);

www.bkjia.com本当http://www.bkjia.com/PHPjc/879723.html技術記事 php配列の要素を削除するための再インデックス方法、php配列要素インデックス 配列内の要素を削除したい場合は、直接unsetを使用できますが、今日見たものは私を大きくさせました...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHP ファイル圧縮 zlib.output_compression と ob_gzhandler、_PHP チュートリアル次の記事:PHP ファイル圧縮 zlib.output_compression と ob_gzhandler、_PHP チュートリアル

関連記事

続きを見る