2016-04-16 6 views
0

Мне нужно изменить свой проект и исключить весь PHP-код в представлениях. Проект был написан в CodeIgniter.codeigniter parser condition issue

Я добился исключения php-кода с помощью класса парсера, но у этого класса нет условий (if, else, ..). До сих пор я пытался установить некоторые шаблоны, но без каких-либо успехов. В каждом учебнике отсутствует один шаг или некоторые шаги неясны.

Может ли кто-нибудь помочь мне и сказать, в каком направлении мне следует идти или что делать. Может быть, объяснить мне, могу ли я в контроллере сделать все заявление и просто перечислить то, что мне нужно.

+0

Могу ли я проверить контроллер для каждой строки одного поля и отрегулировать значение? –

+0

Что вы спрашиваете? Разве вы не спрашиваете, что должен делать контроллер? – budwiser

+0

Как? Если я перечислил все данные из таблицы и отправил на просмотр, как в контроллере изменить для конкретных значений столбца 0 и 1 с активными и отключенными? –

ответ

0

если вы хотите устранить все теги PHP на ваш взгляд

<?php //logic ?> 

вы можете использовать Smarty в одиночку или с CI или другой системы, как это. Но вам нужно узнать новый sintax как php.

С другой стороны, вы можете сделать свой OGIC в контроллере (не рекомендуется)

controller.php

function do_somthing(){ 
    $var_l = '<table>'; 
    $var_l .= '<thead>'; 
    $var_l .= '<th>uno</th>'; 
    $var_l .= '<th>dos</th>'; 
    $var_l .= '<th>tres</th>'; 
    $var_l .= '</thead>'; 
    $var_l .= '<tbody>'; 

    $a = array('a', 'b', 'c'); 

    foreach($a as $item){ 
     $var_l .= '<thc'.$item.'</th>'; 
    } 

    $var_l .= '</tbody>'; 
    $var_l .= '</table>'; 

    $data['table'] = $var_l; 

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

ваш view.php

<!DOCTYPE html> 
<html> 
<body> 

info to display table 

<?= $table ?> 

</body> 
</html> 
0

мне удалось с регулярными проанализировать в кодеригнере и сделать это следующим образом:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
</head> 
<body> 
    <?php echo $content ?> 
</body> 
</html> 

И в контроллере, как это:

$query = $this->users_mod->allProducts(); 
    $data = array(
       'ap_heading' => 'Product definition', 
       'ap_entries' => $query, 
      ); 
    $content = $this->parser->parse('allproducts', $data, TRUE); 
    $this->load->view('template', compact('content')); 

Могу ли я как-то избежать этого в контроллере: компактный («содержание»), и PHP в виду?