Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用Codeigniter获取数组值_Php_Arrays_Codeigniter_Session - Fatal编程技术网

Php 如何使用Codeigniter获取数组值

Php 如何使用Codeigniter获取数组值,php,arrays,codeigniter,session,Php,Arrays,Codeigniter,Session,我有这个选择 $this->db->select('modulo_regra.regra_descricao'); $this->db->from('modulo_regra'); $this->db->where('modulo_regra.modulo_regra_id', id); $query = $this->db->get(); 这让我想起了两个元素 return $query->result

我有这个选择

    $this->db->select('modulo_regra.regra_descricao');
    $this->db->from('modulo_regra');
    $this->db->where('modulo_regra.modulo_regra_id', id);
    $query = $this->db->get();
这让我想起了两个元素

  return $query->result_array();
然后我将返回值放入一个数组中

   $permissoes =array('areas' => $this->Regra_model->user_has($regra['regra_id']));
然后,我将$permissoes分配给会议

   $this->session->set_userdata($permissoes);
所以真正的问题来了。 当我从会话加载值时

   $permissoes = array('areas');
   $permissoes = $this->session->userdata('areas'); 
其内容如下:

array(2) ([0] => array(1) ([regra_descricao] => (string) clientes_cadastrar)
          [1] => array(1) ([regra_descricao] => (string) clientes_visualizar))
因此,我无法用in_array()或其他方式验证它……我想知道是否存在将此数组中的值与另一个变量进行比较的方法

if(in_array('clientes_cadastrar',$permissoes)){}

我是新手。。。很抱歉我这样问。

不要把整个数组作为回报,即

foreach ($query->result() as $row)
{
   $return[] = $row->regra_descricao;
}
return $return;
然后

您可以通过以下方式轻松找到:

if(in_array('clientes_cadastrar',$permissoes[**'areas'**])){}

希望这有帮助,不要把整个数组作为回报,即

foreach ($query->result() as $row)
{
   $return[] = $row->regra_descricao;
}
return $return;
然后

您可以通过以下方式轻松找到:

if(in_array('clientes_cadastrar',$permissoes[**'areas'**])){}

希望这有助于你使用相同的范围

 $this->db->select('modulo_regra.regra_descricao');
     $this->db->from('modulo_regra');
     $this->db->where('modulo_regra.modulo_regra_id', id);
     $query = $this->db->get();

    foreach ($query->result() as $row)
    {
       $permissoes = array['areas'];
    }

    $this->session->set_userdata($permissoes);

你可以使用相同的范围

 $this->db->select('modulo_regra.regra_descricao');
     $this->db->from('modulo_regra');
     $this->db->where('modulo_regra.modulo_regra_id', id);
     $query = $this->db->get();

    foreach ($query->result() as $row)
    {
       $permissoes = array['areas'];
    }

    $this->session->set_userdata($permissoes);

而不是
$permissoes=array('areas')尝试执行
$permissoes=array['areas']而不是
$permissoes=array('area')尝试执行
$permissoes=array['areas']