Php 计算重复的“;usuario#u cidade”;多维
请帮我写个密码。我有这个多维数组,需要计算Php 计算重复的“;usuario#u cidade”;多维,php,multidimensional-array,count,Php,Multidimensional Array,Count,请帮我写个密码。我有这个多维数组,需要计算usuario\u cidadecase的值,其值如下: 数组52=(2)Cidade_1,(2)Cidade_2,(1)Cidade_3 试试这个 $your_array = array(); $usuario_cidade = array(); foreach ($your_array as $key => $values){ foreach($values as $value){ $usuario_cidade[$k
usuario\u cidade
case的值,其值如下:
数组52=(2)Cidade_1,(2)Cidade_2,(1)Cidade_3
试试这个
$your_array = array();
$usuario_cidade = array();
foreach ($your_array as $key => $values){
foreach($values as $value){
$usuario_cidade[$key][$value->usuario_cidade]=isset($usuario_cidade[$key][$value->usuario_cidade]) ? $usuario_cidade[$key][$value->usuario_cidade] : '0' + 1;
}
}
print_r($usuario_cidade);
请尝试以下代码:
//Create object array format as per question scenario for testing...
$arrObject1 = new stdClass();
$arrObject1->funcionario_id = '52';
$arrObject1->usuario_cidade = 'Cidade_1';
$arrObject2 = new stdClass();
$arrObject2->funcionario_id = '52';
$arrObject2->usuario_cidade = 'Cidade_1';
$arrObject3 = new stdClass();
$arrObject3->funcionario_id = '52';
$arrObject3->usuario_cidade = 'Cidade_2';
$arrObject4 = new stdClass();
$arrObject4->funcionario_id = '52';
$arrObject4->usuario_cidade = 'Cidade_3';
$arrObject5 = new stdClass();
$arrObject5->funcionario_id = '52';
$arrObject5->usuario_cidade = 'Cidade_2';
//Finalize array...
$varArray = array('52' => array(
$arrObject1, $arrObject2, $arrObject3, $arrObject4, $arrObject5
));
$arrResult = array();
//Loop until main array...
foreach($varArray AS $arrKey => $arrObjVal){
//Loop for object values...
foreach($arrObjVal AS $ocjKey => $objVal){
//Check for specific key(i.e. value of usuario_cidade) exist into result array...
if(array_key_exists($objVal->usuario_cidade, $arrResult)){
//Increment value if exist...
$arrResult[$objVal->usuario_cidade] = $arrResult[$objVal->usuario_cidade] + 1;
}
else {
//Initialize value of result array...
$arrResult[$objVal->usuario_cidade] = 1;
}
}
}
print('<pre>');
print_r($arrResult);
print('</pre>');
希望这对你有帮助 嘿,请检查此代码,它给出的答案与给定的条件相同
$main_array[52] = array(
0 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_1'
),
1 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_1'
),
2 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_2'
),
3 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_3'
),
4 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_2'
)
);
$check_array = array();
$count_array = array();
foreach ($main_array as $main){
foreach($main as $data){
if(in_array($data['usuario_cidade'], $check_array)){
$count_array[$data['usuario_cidade']] = $count_array[$data['usuario_cidade']] + 1;
}else{
array_push($check_array,$data['usuario_cidade']);
$count_array[$data['usuario_cidade']] = 1;
}
}
}
foreach($count_array as $key => $value){
echo $key.'='.$value.'<br />';
}
echo "<pre>"; print_r($count_array);
以上问题的答案将是
数组(3){[“Cidade_1”]=>int(2)[“Cidade_2”]=>int(2)[“Cidade_3”]=>int(1)}你能检查一下吗
$main_数组[52]=数组(
0=>数组(
“Functionario_id”=>52,
“usuario_cidade”=>“cidade_1”
),
1=>数组(
“Functionario_id”=>52,
“usuario_cidade”=>“cidade_1”
),
2=>数组(
“Functionario_id”=>52,
“usuario_cidade”=>“cidade_2”
),
3=>数组(
“Functionario_id”=>52,
“usuario_cidade”=>“cidade_3”
),
4=>数组(
“Functionario_id”=>52,
“usuario_cidade”=>“cidade_2”
)
);
$check_array=array();
$count_array=array();
foreach($main_数组作为$main){
foreach($main作为$data){
if(在数组中($data['usuario\u cidade',$check\u数组)){
$count_数组[$data['usuario_cidade']]=$count_数组[$data['usuario_cidade']]+1;
}否则{
数组推送($check\u array,$data['usuario\u cidade']);
$count_数组[$data['usuario_cidade']]=1;
}
}
}
foreach($count_数组为$key=>$value){
回显$key.'='.$value.'
;
}
回声“;打印(计数数组);
请检查我的答案,这可能会对您有所帮助。消息:正在尝试获取非对象数组([52]=>Array([]=>1)数组([52]=>Array([Cidade]=>1))的属性没有错误,但它没有进行正确的计数-它的读数就在小数组中错误消息是什么,请与我共享。消息:未定义索引:usuario_cidade Array([]=>3)很乐意帮助您。如果这是您的解决方案,请接受我的回答。
[Cidade_1] => 2
[Cidade_2] => 2
[Cidade_3] => 1
$arr = array();
$arr2 = array('funcionario_id' => 52,'usuario_cidade' => 'Cidade_1' );
$arr3 = array('funcionario_id' => 52,'usuario_cidade' => 'Cidade_1' );
$arr4 = array('funcionario_id' => 52,'usuario_cidade' => 'Cidade_2' );
$arr5 = array('funcionario_id' => 52,'usuario_cidade' => 'Cidade_3' );
$arr6 = array('funcionario_id' => 52,'usuario_cidade' => 'Cidade_2' );
$arr = [$arr2,$arr3,$arr4,$arr5,$arr6];
$cidaed = array('Cidade_1' => 0, 'Cidade_2' => 0 , 'Cidade_3' => 0 );
$count = 0;
//echo var_dump($arr);
foreach ($arr as $key => $value) {
foreach ($value as $keys => $values) {
if($keys == 'usuario_cidade')
{
$cidaed[$values] += 1;
}
}
}
echo var_dump($cidaed);
$main_array[52] = array(
0 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_1'
),
1 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_1'
),
2 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_2'
),
3 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_3'
),
4 => array(
'funcionario_id' => 52,
'usuario_cidade' => 'Cidade_2'
)
);
$check_array = array();
$count_array = array();
foreach ($main_array as $main){
foreach($main as $data){
if(in_array($data['usuario_cidade'], $check_array)){
$count_array[$data['usuario_cidade']] = $count_array[$data['usuario_cidade']] + 1;
}else{
array_push($check_array,$data['usuario_cidade']);
$count_array[$data['usuario_cidade']] = 1;
}
}
}
foreach($count_array as $key => $value){
echo $key.'='.$value.'<br />';
}
echo "<pre>"; print_r($count_array);