繁体   English   中英

打印没有print_r标签的数组php

[英]Printing an array without print_r tags php

不知道我问的是不是正确的问题,但是我有一个带有几个“列表”名称的数组,我想计算它们在数组中出现的次数并打印出来。 这是清单:

$array = ['EMC_IMP_PAT_ANT_REVIEW_MANG_20160105', 'EMC_IMP_PAT_ANT_REVIEW_MANG_20160105', 'EMC_IMP_PAT_ANT_REVIEW_MANG_20150105', 'EMC_IMP_PAT_ANT_REVIEW_MANG_30160105', 'EMC_IMP_PAT_ANT_REVIEW_MANG_20160205', 'EMC_IMP_PAT_ANT_REVIEW_MANG_20178105'];

我目前正在使用print_r和array_count_values来打印和计数数组。

print_r(array_count_values($array));

我的输出是:

Array
(
    [IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20160105] => 2
    [IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20150105] => 1
    [IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_30160105] => 1
    [IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20160205] => 1
    [IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20178105] => 1
)

我想以某种方式摆脱单词“ Array”和括号。 我理想的输出是:

[IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20160105] => 2
[IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20150105] => 1
[IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_30160105] => 1
[IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20160205] => 1
[IMC_UMP_WRAP_ANNUAL_REVIEW_MANM_20178105] => 1

**方括号可能是可选的。 谢谢!

如果您不想遍历数组(如上面的注释中所述),请尝试使用preg_replace摆脱不需要的部分:

$array = array(
    'EMC_IMP_PAT_ANT_REVIEW_MANG_20160105', 
    'EMC_IMP_PAT_ANT_REVIEW_MANG_20160105', 
    'EMC_IMP_PAT_ANT_REVIEW_MANG_20150105', 
    'EMC_IMP_PAT_ANT_REVIEW_MANG_30160105', 
    'EMC_IMP_PAT_ANT_REVIEW_MANG_20160205', 
    'EMC_IMP_PAT_ANT_REVIEW_MANG_20178105',
);
echo preg_replace(
    '/(^Array|^\\(\n|^\\)\n|^\s*)/m', 
    '', 
    print_r(array_count_values($array), true)
);

使用Foreach

$data=array_count_values($array);

echo '<pre>';

foreach($data as $key => $value){

    echo '[' . $key . '] =>' . $value . PHP_EOL;
}

echo '</pre>';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM