Ваш print_r показывает, что ваш идентификатор (и его друзья) были сохранены в объекте, называемом профилем.
Итак, я создал небольшой тестовый сценарий, основанный на том, что вы показали, и как вы могли прочитать этизначения.
//
// Using Objects - most likely from a Database result set
//
// Create the session test data
$profile = (object)array();
$profile->id = 1;
$profile->name = 'Fred';
// Display the full session
$this->session->set_userdata('profile', $profile);
var_dump($this->session->userdata());
$profile = $this->session->userdata('profile');
var_dump($profile);
echo 'userId is ' . $profile->id; // Std Object
echo '<br>';
echo 'userId is ' . $this->session->profile->id; // Magic Method
Результат
array (size=2)
'__ci_last_regenerate' => int 1538540690
'profile' =>
object(stdClass)[18]
public 'id' => int 1
public 'name' => string 'Fred' (length=4)
object(stdClass)[18]
public 'id' => int 1
public 'name' => string 'Fred' (length=4)
userId is 1
userId is 1
Конечно, вы можете использовать print_r () вместо var_dump ().Я просто предпочитаю var_dump ().