1. 配列内の繰り返し要素を取得します。コードは次のとおりです:
a.方法1:
コードは次のとおりです |
|
関数 array_repeat($arr)
{
if(!is_array($arr)) return $arr;
$arr1 = array_count_values($arr);
$newArr = array();
foreach($arr1 as $k=>$v)
{
if($v>1) array_push($newArr,$k);
}
$newArr; を返します
}
|
b.方法 2:
コードは次のとおりです |
|
関数 array_repeat($arr)
{
if(!is_array($arr)) return $arr;
$arr1 = array_unique($arr);
$arr3 = array_diff_key($arr,$arr1);
return array_unique($arr3);
}
|
試験方法
コードは次のとおりです
|
|
$arr = array('リンゴ','青','赤','バナナ','梨','リンゴ','青','色','色');
print_r(array_repeat($arr));
結果: 配列 ( [5] => リンゴ [6] => 青 [8] => カラー)
|
次に、配列から重複した要素を削除するいくつかの方法を説明します
配列から重複した要素を削除するarray_keys関数。
*/
コードは次のとおりです |
|
$a=array("赤", "緑", "青", "黄");
count($a); // 4 を取得します
unset($a[1]); // 2 番目の要素を削除します
count($a); // 3 を取得します
echo $a[2]; // 配列には 3 つの要素しかありませんが、最後の要素を取得したかったのですが、青になりました。
echo $a[1] //値なし
//array array_splice (配列入力, int オフセット [, int 長さ [, 配列置換]])
//array_splice() は実際には配列要素を置換する関数ですが、置換値を追加しない場合は単に要素を削除するだけです。array_splice() の使用法は次のとおりです。
$b=array("赤", "緑", "青", "黄");
array_splice($a,1,1);
|
//重複値の削除と配列の指定要素の削除のより包括的な方法を見てみましょう
コードは次のとおりです |
|
$array1 = array(1 => "www.45it.net", 2 => "パイナップル", 4 => "www.45it.net",3 => "バナナ",4 =>; "グアバ",5 => "www.45it.net",6 => "www.45it.net");
$search_keys = array_keys($array1, "www.45it.net");
foreach($search_keys as $key) {
unset($array1[$key]);
}
print_r($array1);
/*
結果を得る
配列 ( [2] => パイナップル [4] => グアバ [3] => バナナ )
*/
//配列内の重複要素を削除する関数
関数 delmember(&$array, $id)
{
$size = count($array);
for($i = 0; $i
{
$array[$id + $i] = $array[$id + $i + 1];
}
unset($array[$size - 1]);
}
|
http://www.bkjia.com/PHPjc/372143.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/372143.html技術記事 1. 配列内の重複した要素を取得します。コードは次のとおりです: a. 方法 1: コードは次のとおりです function array_repeat($arr) { if(!is_array($arr)) return $arr1 = array_count_values($n...