Частичные представления с областью действия локальной переменной в CodeIgniter - PullRequest
3 голосов
/ 04 апреля 2011

У меня есть что-то вроде следующего кода в одном из моих представлений:

<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_1', 'is_required' => true)); ?>

... some html ...

<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_2')); ?>

Это позволяет мне использовать $errors, $field и $is_required в частичном. Это хорошо, хотя то, что здесь происходит, заключается в том, что если я не предоставлю значение 'is_required' при последующих вызовах партиала, он получит значение, равное последнему значению (в данном случае true).

Я мог бы просто помещать значение в каждый раз, но я надеялся, что оно будет вести себя как необязательный параметр для функции. Есть ли какая-либо функциональность в CodeIgniter, которая позволяет частям иметь собственную область видимости локальной переменной.

1 Ответ

0 голосов
/ 04 апреля 2011

Сладкое!Не берите в голову, я думаю, я нашел хак, чтобы обойти это.

вместо того, чтобы идти:

<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_1', 'is_required' => true)); ?>

Я могу пойти:

<?php $this->load->view('_validation_error', array('data' => array('errors' => $errors, 'field' => 'address_1', 'is_required' => true))); ?>

Таким образом, яиметь доступ к $data['errors'], $data['field'] и $data['is_required'].

. Таким образом, любые значения, которые не были переданы, перезаписываются и по умолчанию являются необязательными.

:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...