Php 如何提取多个字段名/列值-Codeigniter?

Php 如何提取多个字段名/列值-Codeigniter?,php,sql-server,codeigniter,Php,Sql Server,Codeigniter,假设我的模型上有此本机查询: public function print_query($id){ $sql = "Select Field1,Field2,Field3.. FROM Table WHERE id = '".$id."' "; if($this->db->query($sql, array($id))->num_rows() > 0) { return $this->db->query($sql, array($id

假设我的模型上有此本机查询:

public function print_query($id){

$sql = "Select Field1,Field2,Field3.. FROM Table WHERE id = '".$id."' ";

    if($this->db->query($sql, array($id))->num_rows() > 0)
    {
    return $this->db->query($sql, array($id))->result();
    }
}
在我的控制器上:

public function emp_preview(){

$EmpID =  $this->input->post('txt_id');
$data['p_det'] = $this->db_sal_details->print_query($EmpID);
$this->load->view('employee/preview',$data,TRUE);

}
在我看来:我想显示Field1、Field2、Field3等的值。, 我用这个代码来显示它们

<table>
<tr>                            
<?php if($p_det):?>
<?php foreach($p_det as $det):?>
<th><?php echo $det->Field1;?></th>
<th><?php echo $det->Field2;?></th>
<th><?php echo $det->Field2;?></th>
...
<?php endforeach;?>
<?php endif;?>
</tr>
</table>

...
这一切都可以正常工作,并显示字段及其值。但是,如果我有3个以上的字段(例如50个字段),并且我希望在不键入每个字段的情况下动态填充TH,该怎么办呢。我该怎么做


我知道这对各位专家来说很简单,但我只是个初学者。。请容忍我,帮我做这件事。提前谢谢你的回复

我认为您可以使用foreach遍历包含对象$det的Field1、Field2.etc的属性

public function print_query($id){

$sql = "Select Field1,Field2,Field3.. FROM Table WHERE id = '".$id."' ";

    if($this->db->query($sql, array($id))->num_rows() > 0)
    {
    return $this->db->query($sql, array($id));
    }
}
看法


...

我在视图中使用了foreach来迭代和显示值。我需要一些foreach吗?我应该把它放在哪里,怎么放。你能告诉我怎么做吗??顺便说一句,谢谢你的回复。我在我的视图上尝试了这个,但它告诉我错误:遇到了PHP错误严重性:注意消息:试图获取非对象文件名的属性:employee/preview.PHP行号:92hmm我的问题,你想只显示字段名吗?还是字段名+值?在您的视图中,它只是循环字段的值而已。我想动态显示它,而不必键入每个字段的名称。我想它将通过循环来完成,但我不知道怎么做。我只是编辑了模型和视图,我所能做的就是帮助btw它只显示没有特定字段的值。如果($this->db->query($sql,array($id))->num_rows()>0){return$this->db->query($sql,array($id))->result();}您在这里运行了两次查询
<table>
<tr>                            
<?php if($p_det):?>
<?php foreach($p_det->result_array() as $det):?>
<?php foreach($det as $field => values){?>
<th><?php echo $columns[$field] = $values;?></th>
...
<?php 
}
endforeach;
?>
<?php endif;?>
</tr>
</table>