Php 如何仅当stdclass对象的值存在于另一个数组中时才显示它们
我有一个数组:-Php 如何仅当stdclass对象的值存在于另一个数组中时才显示它们,php,field,key-value,stdclass,Php,Field,Key Value,Stdclass,我有一个数组:- $headers=array( 'a', 'b', 'c', ); 然后说我从数据库中得到的一个对象:- $sql = 'Select * from my_table'; $views = $DB->get_records_sql($sql); 现在,我的目标是在表中显示标题,并且仅当下
$headers=array(
'a',
'b',
'c',
);
然后说我从数据库中得到的一个对象:-
$sql = 'Select * from my_table';
$views = $DB->get_records_sql($sql);
现在,我的目标是在表中显示标题,并且仅当下面的$view中的字段的键与$header匹配时,才显示表中的值
echo '<table border="1">';
echo '<thead>';
echo '<tr>';
foreach($headers as $header){
echo '<th>';
echo $header;
echo '</th>';
}
echo '</tr>';
echo '</thead>';
echo '<tbody>';
foreach ($views as $view){
echo '<tr>';
foreach($view as $column=>$value){
echo '<td>';
echo $value;
echo '</td>';
}
echo '</tr>';
}
echo '</table>';
echo';
回声';
回声';
foreach($headers作为$header){
回声';
echo$header;
回声';
}
回声';
回声';
回声';
foreach($view作为$view查看){
回声';
foreach($column=>$value的视图){
回声';
echo美元价值;
回声';
}
回声';
}
回声';
我尝试使用$key代替$value,并使用in_array()方法检查$view字段的键是否存在于$header中,但即使这样,也会给出值而不是字段的名称。是否有任何方法可以检查数组中是否存在字段名,我打印出值,否则我不打印。以下内容如何
foreach($view as $column => $value){
if(in_array($column, $headers)){
echo '<td>' . $value . '</td>';
}
}
foreach($view as$column=>$value){
if(在数组中($column$headers)){
回显“.$value.”;
}
}
请仅使用数组变量中的一些示例数据来隔离您的问题,稍后添加数据库交互和HTML输出。那你应该更快地找到解决办法。我以后会记住的。非常感谢。