无法将变量从一个函数传递到php中的另一个函数

时间:2014-01-23 19:02:40

标签: php codeigniter

这就是我想要做的事情。

(当我提到州和城市时。我的意思是美国的州和城市,纽约,德克萨斯等...)

为了让我在每个经销商页面上显示类似的经销商,我将不得不使用州和城市变量。在我的原始函数中,我传递的是城市变量而不是状态变量。我通过我所做的函数(下面的语法)提取了状态变量,但这是我遇到麻烦的地方。

当我提取状态时,我试图将其转换为变量,但它不起作用(下面的语法)。我的问题是,我如何将我正在提取的内容(状态)转换为变量?

在下面的函数中,我从我传递的id中获取状态。

function get_state_from_the_id($id)
{
   $this->db->select('state');
   $this->db->where('id',$id);
   $result = $this->db->get('dealers');

   if ($result->num_rows() > 0){
      return FALSE; 
   } else {
      return TRUE; 
   }
}

这是我遇到麻烦的地方

$state = $this->Dealer_data->get_state_from_the_id($id); // gets the state

在上面的代码行中,我试图从我的函数中提取状态作为变量,但它不起作用。我的目标是提取状态(IE,纽约,德克萨斯,加利福尼亚等...)并将该变量插入到我制作的另一个函数中。我究竟做错了什么?我怎样才能纠正错误?

由于

2 个答案:

答案 0 :(得分:6)

您必须返回$result

if ($result->num_rows() > 0){
    return $result; 
} else {
    return FALSE; 
}

答案 1 :(得分:2)

我的做法是提供您的参考资料

模型

function get_state_from_the_id($id) {
  $query = $this->db->get_where('dealers', array('id' => $id));
  return $query->num_rows();
}

位指示

$state = ($this->Dealer_data->get_state_from_the_id($id) > 0) ? FALSE : TRUE;