我有一个从数据库调用数据的变量:
for($i = 0; $i < count($consultaReporte); $i++)
{
$a= $consultaReporte[$i]['FIELD'];
}
我在html表中打印这个变量,我得到了:
如何隐藏或删除重复名称?
我想要类似的东西:
答案 0 :(得分:0)
你可以将它们存储在地图中,然后获取地图键(地图没有存储公共密钥)
$a = array();
for($i = 0; $i < count($consultaReporte); $i++)
{
$a[$consultaReporte[$i]] = '';
}
print_r( array_keys($a) );
答案 1 :(得分:0)
您可以通过保护填充临时数组
来使用它 $arrTemp = array();
foreach ($consultaReporte as $curr) {
if (!in_array($curr['FIELD'], $arrTemp)) {
$arrTemp[] = $curr['FIELD'];
}
}
foreach($arrTemp as $currValue){
echo $currValue;
}
示例:
$consultaReporte = array("a", "b", "b");
$arrTemp = array();
foreach ($consultaReporte as $curr) {
if (!in_array($curr, $arrTemp)) {
$arrTemp[] = $curr;
}
}
foreach($arrTemp as $currValue){
echo $currValue . '-';
}
答案 2 :(得分:0)
foreach()
$temp = [];
foreach ($consultaReporte as $reporte) {
if (! in_array($field = $reporte['FIELD'], $temp)) {
$temp[] = $field;
}
}
// Return the result
return $temp;
答案 3 :(得分:0)
这就是我解决自己问题的方法:
for($i = 0; $i < count($consultaReporte); $i++)
{
$employeeId = $consultaReporte[$i]['ID_EMPLOYEE'];
$employeeName = $consultaReporte[$i]['FIELD'];
if($employeeId == $consultaReporte[$i-1]['ID_EMPLOYEE'])
{
$employeeName = '';
}
$this->cuerpoReporte.= '<tr class="">
<td width="90" align="left" valign="top" border="0"> '.wordwrap(strtoupper(''.$employeeName), 20, "<br />",1).'</td>
</tr>';
}
它给了我预期的结果。尽管如此,我很确定这不是最佳方式,所以如果有人知道如何优化这些代码,甚至是一个新的代码,它们会给出相同的结果,我将很乐意与大家分享。