Как получить функцию, возвращающую массив одной строкой? Ниже моего кода

Учебный класс:

 class profile_setting extends MY_Controller {

public function __construct()
{
parent::__construct();
}
public function index()
{
echo $this->table()->breadcrump;
}
public function table(){
return array('table'=>'tbl_users','breadcrump'=>'Profile Settings','redirect_url'=>'dashboard');
}
}

Выше кода я получил ошибку, когда я использую эту строку, как показано ниже

echo $ this-> table () -> breadcrump;
или же
echo $ this-> table () [‘breadcrump’];

1

Решение

Попробуйте с —

$breadcrumb = $this->table();
echo $breadcrumb['breadcrump'];

для одной строки попробуйте с —

echo $this->table()['breadcrump'];
1

Другие решения

Я думаю, что это должно работать для вас в одной строке.

 public function index()
{
echo $this->table()['breadcrump'];
}

демонстрация

0

Самый простой способ, который я нашел, делать хлебные крошки на codeigniter — это. Вы можете использовать это с начальной загрузкой хорошо.

public function index()

$data['breadcrumbs'] = array();

$data['breadcrumbs'][] = array(
'text' => 'Home',
'href' => site_url('admin/common/dashboard')
);

$data['breadcrumbs'][] = array(
'text' => 'Banners',
'href' => site_url('admin/design/banners')
);

$this->load->view('folder/file', $data);
}

На вид

<ul class="breadcrumb">
<?php foreach ($breadcrumbs as $breadcrumb) { ?>
<li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
<?php } ?>
</ul>
0

Sadikhasan и sgt дали вам ответ, когда вы получаете доступ к массиву, который вы должны использовать таким образом.

если возвращение было объектом, то вы должны использовать этот способ
$ This-> таблица () -> breadcrump

Но для этого вы обращаетесь к возвращенному массиву, поэтому ответ @Sadikhasan — это ваш ответ.

0
По вопросам рекламы [email protected]