2013-05-14 16 views
6

Kontroler:Dlaczego używamy TRUE obciążenia widok w CodeIgniter

$data = array(); 
$page['left_content'] = $this->load->view('left_content', $data, TRUE); 
$page['main_content'] = $this->load->view('left_content', $data, TRUE); 
$page['right_content'] = $this->load->view('left_content', $data, TRUE); 
$this->load->view('home',$data); 

Widok:

<body> 
<?php if(isset($left_content)){echo $left_content;}?> 
<?php if(isset($main_content)){echo $main_content;}?> 
<?php if(isset($right_content)){echo $right_content;}?> 
</body> 

Proszę spojrzeć do powyższego kodu. Ten kod służy do wyświetlania strony na głównej stronie głównej. Teraz po prostu wykonaj test. Jeśli po prostu usuniemy PRAWDA z kodu, kod nie działa poprawnie. Oznacza to, że gdy go usuniemy, widok nie zostanie wydrukowany we właściwym miejscu. drukuje się na górze głównego widoku lub głównej strony głównej. Mam dużo googlowałem, ale nie mogę znaleźć żadnej przyczyny, aby go użyć. Po prostu chcę wiedzieć, dlaczego po prostu używamy PRAWDA w tym kodzie? thnx

Odpowiedz

10

Kiedy przekazujemy TRUE jako parametr opcjonalny podczas wczytywania widoku, to zwraca on zawartość zamiast bezpośrednio wysyłać (wyświetlać) dane do przeglądarki.

Można sprawdzić w documentation:

Jest jeszcze trzecia opcja parametr pozwala zmienić zachowanie funkcja tak, że zwraca dane jako ciąg zamiast wysyłania go przeglądarce. Może to być przydatne, jeśli chcesz w jakiś sposób przetworzyć dane . Jeśli ustawisz parametr na true (boolean), zwróci on dane . Domyślnym zachowaniem jest false, które wysyła je do przeglądarki. Pamiętaj, aby przypisać go do zmiennej, jeśli chcesz zwrócić dane:

$ string = $ this-> load-> view ('myfile', '', true);

+0

Myślę, że to jest to samo; 'ob_start(); $ this-> load-> view ("some_view"); $ echoed_content = ob_get_clean(); ' – rcpayan

+0

thnx dużo bro ........ –

+0

Zaakceptuj odpowiedź, jeśli to naprawdę pomaga ... –

0

Celem trzeciego parametru opcjonalnego pozwala zmienić zachowanie funkcji tak, że zwraca dane w postaci ciągu znaków, a nie wysyłanie go do Twoja przeglądarka. Jest to bardzo przydatne, jeśli chcesz przetwarzać dane w jakiś sposób. Jeśli ustawisz parametr na true (boolean), zwróci on dane. Domyślnym zachowaniem jest false, które wysyła je do przeglądarki.

Przykład:

$dataString = $this->load->view('viewFileName','', true); 

UWAGA: Pamiętaj, aby przypisać ją do zmiennej, jeśli chcesz dane zwracane

Tu $ dataString zmienna zawiera dane jako ciąg żądanego pliku widoku Read here Więcej szczegółów

Powiązane problemy