I'm building a CodeIgniter application with SQL server.
I' reading user permission from the database and then store it so I can show sidebar menu according to the user permission but I'm getting this error :
in_array() expects parameter 2 to be array, string given
here's my controller code:
public function __construct()
{
parent::__construct();
$group_data = array();
if(empty($this->session->userdata('logged_in'))) {
$session_data = array('logged_in' => FALSE);
$this->session->set_userdata($session_data);
}
else {
$user_id = $this->session->userdata('id');
$this->load->model('model_groups');
$group_data = $this->model_groups->getUserGroupByUserId($user_id);
preg_replace_callback('!s:(\d+):"(.*?)";!',
function($match) {
return ($match[1] == strlen($match[2])) ? $match[0] : 's:' . strlen($match[2]) . ':"' . $match[2] . '";';},
$group_data['permission'];);
$this->data['user_permission'] = $group_data['permission'];
var_dump($this->data['user_permission']);
$this->permission = $group_data['permission'] ;
}
}
When I try to show what's stored in my data
var_dump($this->data['user_permission']);
I get :
and I'm trying to use them in my view like this:
<?php if(in_array('createUser', $this->data['user_permission']) || in_array('updateUser', $this->data['user_permission']) || in_array('viewUser', $this->data['user_permission']) || in_array('deleteUser', $this->data['user_permission'])): ?>
<li class="treeview" id="userSideTree">
<a href="#">
<i class="fa fa-users"></i>
<span>Utilisateurs</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
Can you help me with this?