ホームページ  >  記事  >  バックエンド開発  >  PHPで配列要素を削除する方法

PHPで配列要素を削除する方法

墨辰丷
墨辰丷オリジナル
2018-06-05 16:34:041592ブラウズ

この記事では主にPHPで配列要素を削除する方法を紹介します。興味のある方はぜひ参考にしてください。

配列要素を削除するためのいくつかの PHP メソッド。多くの場合、配列は重複します。では、配列内の重複した内容を削除した場合はどうすればよいでしょうか。そのため、削除する方法を見つける必要があります。以下を使用して、クエリを反復して重複した配列要素を削除するいくつかの方法を示します。
方法1. 重複した配列インスタンスを完全に削除する-----配列内の要素を削除する

function array_remove_value(&$arr, $var){
foreach ($arr as $key => $value) {
if (is_array($value)) {
array_remove_value($arr[$key], $var);
} else {
$value = trim($value);
if ($value == $var) {
unset($arr[$key]);
} else {
$arr[$key] = $value;
}
}
}
}

$aは配列です:

count($a); //得到4
unset($a[1]); //删除第二个元素
count($a); //得到3
echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue,
echo $a[1]; //无值
?>

つまり、要素を削除した後、 array 、配列内の要素の数 (count() を使用して取得) は変更されましたが、配列の添字は再配置されていないため、配列の前のキーを削除して対応する値を操作する必要があります。
その後、別のメソッドを採用しましたが、実際には「メソッド」とはまったく呼ばれず、php4 の既製の 関数 array_splice() を使用しました。

count ($a); //得到4
array_splice($a,1,1); //删除第二个元素
count ($a); //得到3
echo $a[2]; //得到yellow
echo $a[1]; //得到blue
?>

メソッド2、配列内の重複要素を削除する関数

function delmember(&$array, $id)
{
$size = count($array);
for($i = 0; $i <$size - $id - 1; $i ++)
{
$array[$id + $i] = $array[$id + $i + 1];
}
unset($array[$size - 1]);
}

追加の小さな例:

メソッド1、phpには、削除に使用できる組み込み関数array_uniqueがあります配列内の重複した値

  • array_unique -- 配列から重複した値を削除します

  • array_unique 説明

  • array array_unique ( array array )

  • array_unique() は受け入れます配列を入力として使用し、何も返しません。 重複した値 新しい配列

キー名は変更されないことに注意してください。 array_unique() は、最初に値を文字列として並べ替え、次に各値の最初に見つかったキーのみを保持し、それ以降のキーをすべて無視します。これは、ソートされていない配列内で最初に出現した同じ値が保持されるという意味ではありません。
注: (文字列) $elem1 === (文字列) $elem2 の場合に限り、2 つのユニットは同じとみなされます。つまり、文字列の表現が同じ場合です。
最初のユニットは保持されます。 Example:array_unique()配列のキーと値を反転する関数で、配列内の2つの値が同じ場合、反転後も最後のキーと値が保持されるという機能を使用して間接的に実装します。 2 つのメソッドの違いは、

array_flip

を使用すると、繰り返される要素の最後のキーと値が取得され、

array_unique を使用すると、繰り返される 2 つの要素の最初のキーと値が取得されることです。

概要


: 上記がこの記事の全内容です。皆様の学習に役立つことを願っています。

関連する推奨事項: PHP でページの静的化を実現する簡単な方法を共有する

PHP でのデータ転送の CURL 例の分析

XML ファイルにデータを追加する簡単な例を共有するPHPで

以上がPHPで配列要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。