【问题标题】:get value single value from array var that stores result of query php从存储查询php结果的数组var中获取值单个值
【发布时间】:2013-05-19 16:35:39
【问题描述】:

我有一个存储查询结果的查询,例如

$this->load->model('person/person_model');
$data['result'] = $this->person_model->get('tbl_person', array('id_person' => $some_key),TRUE);

这将返回人员的所有字段$some_key (id,name,email...) 然后我需要传递 $data 但在我想使用该结果的名称和电子邮件之前

所以

$this->load->model('person/other_person_job_model');
$status= $this->other_person_job_model->get('tbl_other_person',array('name'=> ?  ),TRUE);

然后我可以使用$status['name']$status['email'] 在上面的示例中,我应该用什么来代替 ?? 我应该使用$data['result']['name'] 或类似的东西吗? 获取函数是:

function get($table,$where=array(),$single=FALSE) {
        $q = $this->db->get_where($table,$where);
        $result = $q->result_array();
        if($single) {
            return $result[0];
        }
        return $result;
    }

【问题讨论】:

  • 没有得到你。应该放入什么手段?如果您想按名称获取记录,请在此处输入名称或通过电子邮件输入用户的电子邮件。
  • 但是如何获取特定值,如果$data['result'] 是一个包含所有值的数组,语法是什么,如何从中获取名称和电子邮件?
  • var_dump($data['result']) & 检查结果格式。可能是$data['result']['name']
  • $data['result']['name'] 不工作,我收到一个错误,告诉 Undefined offset
  • 我没有得到你想要的......但我认为你需要使用 $data[result]->name... 或者如果它有不止一行,请使用 foreach 循环来获取你的期望值

标签: php mysql codeigniter database-abstraction


【解决方案1】:

你可以使用变量,比如:

$this->load->model('person/person_model');
$result = $this->person_model->get('tbl_person', array('id_person' => $some_key),TRUE);
$data['name'] = $result->name;
$data['result'] = $result;
//and
$this->load->model('person/other_person_job_model');
$status= $this->other_person_job_model->get('tbl_other_person',array('name'=> $result->name  ),TRUE);

【讨论】:

  • 有没有办法像$data['result'] 一样在你的例子中存储查询结果?
  • @cMinor 查询结果存储在我的示例代码中的 $result 变量中......并且 $data["result"] 被分配了 $result
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-04
  • 2012-11-05
  • 2014-10-14
  • 2018-12-27
  • 1970-01-01
相关资源
最近更新 更多