-1

私は配列を持っています:

$arr = array();
$arr[0] = array(2628927 => "8250843");
$arr[1] = array(2628927 => "8250843");
$arr[2] = array(2783907 => "8250843");
$arr[3] = array(2783907 => "8250843");
$arr[4] = array(2648250 => "8250843");
$arr[5] = array(2628927 => "8250843");

$arr1 = array();

ユニークな靭帯キー=>スクリプトで取得する値

foreach($arr as $a)
{
    if(!in_array($a, $arr1)){
        $arr1[] = $a;
    }
}

私よりも出力値一意の靭帯キー=>値

foreach ($arr1 as $keys => $elms ) {
foreach ( $elms as $key => $val ) {
echo "$key = $val<br>";

一般配列$arrで同一の靭帯$key= $ valの数を数える方法は?

}
}

たとえば、2628927のカウント=>"8250843"は3になります

どうやってこれを手に入れますか?

反対票を投じたい場合は、回答をお願いします。

本当にありがとう)

4

1 に答える 1

0

期待される結果が3の場合は、以下を試してください。

$count = count(array_unique(array_map('serialize', $arr)));

編集:

function foo($arr, $target) {
  $data = array_count_values(array_map('serialize', $arr));
  $key = serialize($target);
  return isset($data[$key]) ? $data[$key] : 0;
}

$arr = array();
$arr[0] = array(2628927 => "8250843");
$arr[1] = array(2628927 => "8250843");
$arr[2] = array(2783907 => "8250843");
$arr[3] = array(2783907 => "8250843");
$arr[4] = array(2648250 => "8250843");
$arr[5] = array(2628927 => "8250843");

echo foo($arr, array(2628927 => "8250843")); // the result is 3
于 2012-12-16T08:41:47.970 に答える