Intereting Posts
Разделение разделителя строк в PHP на пары ключей / значений (ассоциативный массив) Laravel 4 Проверка Ajax для включения XMLHttpRequest (из Magnific Popup) Как выполнить несколько вложений MySQL в PHP php – Как распечатать этот многомерный массив? Как читать параметры запроса OAuth с помощью PHP? Загрузка нескольких версий одного и того же класса Отобразить установленный флажок в форме для формирования отправки POST Как создать безопасный mysql подготовленный оператор в php? Веб-промежуточное программное обеспечение, применяемое к маршрутам API в Laravel 5.2 Число переменных не соответствует количеству параметров – Да, они делают Как получить роль пользователя в Yii2? Что называется «->» PHP-оператором и как вы это говорите при чтении кода вслух? предотвратить объединение двух конфигураций модуля в Zend Framework 2 mysql_connect не работает для сайта Слэш в таблицах MySQL, но с использованием PDO и параметризованных запросов. Что происходит?

Codeigniter передает данные из контроллера для просмотра

В соответствии с этим у меня есть следующий контроллер:

class User extends CI_Controller { public function Login() { //$data->RedirectUrl = $this->input->get_post('ReturnTo'); $data = array( 'title' => 'My Title', 'heading' => 'My Heading', 'message' => 'My Message' ); $this->load->view('User_Login', $data); } //More... } 

и в моем файле User_Login.php я делаю это:

 <?php print_r($data);?> 

что приводит к:

 A PHP Error was encountered Severity: Notice Message: Undefined variable: data Filename: views/User_Login.php Line Number: 1 

Нужно ли загружать какие-либо конкретные модули / помощники, чтобы заполнить переменную $ data? Если я print_r($this) , я вижу много вещей, но ни одна из моих данных, кроме кэшей

Изменить: Чтобы уточнить, я знаю, что вызов переменной в контроллере и представлении не будет «разделять» его – это вне области видимости, но в примере, который я связал, похоже, что в области создается переменная $data представления. Я просто использовал одно имя в контроллере

Ах, ключи массива $data преобразуются в переменные: try var_dump($title); например.

EDIT: это делается с помощью экстента .

вы должны сделать это так:

 echo $title ; echo $heading; echo $message; 

Или вы можете использовать его как массив. В контроллере:

 ... $this->load->view('User_Login', array('data' => $data)); ... 

Ввиду:

 <?php print_r($data);?> 

покажет вам массив ([title] => My Title [heading] => My Heading [message] => My Message)

вы можете передать переменную в URL-адресе

 function regresion($value) { $data['value'] = $value; $this -> load -> view('cms/template', $data); } 

В представлении

 <?php print_r($value);?> 

Вы не можете распечатать переменную $ data, так как это ассоциативный массив …. вы можете печатать каждый элемент ассоциативного массива ….. рассмотрим следующий пример.

Не делайте следующее:

 echo $data; 

Сделайте следующее:

 echo $title; echo $heading; echo $message; 

Вы также можете использовать этот способ

 $data['data]=array('title'=>'value'); $this->load->view('view.php',$data);