简体   繁体   English

从cakephp中的数组获取数据

[英]get data from array in cakephp

I'm trying to get the data from array in my controller php on Cakephp. 我正在尝试从Cakephp上的控制器php中的数组中获取数据。

I have this function: 我有这个功能:

public function updateUserStatus() {

  if(isset($this->params['url']["pcs"]))  {

    $uus = array( "pcs" =>$this->params['url']["pcs"] );
    $trans = $this->Transaction->updateUserStatus($uus);

  } else {
    $trans = "failed";
  }

  $this->set('trans', $trans);
  $this->layout = 'ajax';
}

And I want to get the data from status_id who have this response: 我想从status_id获取具有以下响应的数据:

Array ( 
[0] => Array 
    ( 
    [status_id] => 2 
    ) 
[1] => Array 
    ( 
    [rem_time] => 66 
    ) 
)

How can I do it? 我该怎么做?
My question is how can i get the data for status_id ? 我的问题是如何获取status_id的数据?

public function updateUserStatus() {
    if (isset($this->params['url']["pcs"]))  {
        $uus = array("pcs" =>$this->params['url']["pcs"]);
        $trans = $this->Transaction->updateUserStatus($uus);
    } else {
        $trans = "failed";
    }

    $currentStatus = 0;
    if (is_array($trans) && isset($trans['status_id'])) {
        $currentStatus = $trans['status_id'];
    }

    $this->set('trans', $trans);
    $this->layout = 'ajax';
}

public function updateUserStatus($uus){
    if(isset($uus["pcs"])) {
        $sql = "SELECT status_id  as status_id , rem_time as rem_time FROM phones WHERE pcs = '".$uus["pcs"]."' LIMIT 1";
        $query = $this->query($sql);
        return $query[0]['phones'];
    } else {
        return "failed";
    }
}

Notice, we are returning $query[0]['phones'] . 注意,我们将返回$query[0]['phones']

Let me know if it works. 让我知道它是否有效。 The code could also use some refactoring. 该代码还可以使用一些重构。

For example, why is the function called updateUserStatus if it is only returning the result of a query? 例如,为什么仅返回查询结果的函数称为updateUserStatus It should also always return an array, for consistency. 为了一致性,它还应该始终返回一个数组。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM