2015-12-15 2 views
2

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

Как написать сценарий, который я внес в CodeIgniter?

Вот код, который я сделал до сих пор:

<?php 
    date_default_timezone_set('Asia'); 
    $u = $row->jadwalkal; 
    $tgl1 = $u; 
    $tgl2 = date("Y-m-d"); 
    $selisih = strtotime($tgl1) - strtotime($tgl2); 
    $hari = $selisih/(60*60*24); 
    if ($hari < 0){ 
    ?> 
    <div class="label label-danger"><?php echo "Telat $hari hari";?></div> 
    <?php 
    }elseif ($hari < 7) { 
    ?> 
    <div class="error message"><?php echo "Tinggal $hari hari";?></div> 
    <?php 
    }else{ 
    ?> 
    <div class="error message"><?php echo "Masih $hari hari";?></div> 
    <?php } 
?> 
+0

Что именно вы ищите? – rahul

+0

Вам необходимо обратиться к руководству пользователя http://www.codeigniter.com/user_guide/ –

+0

@rahul, Да, это правда, ... –

ответ

2

Codeigniter построен PHP. Таким образом, нет такой работы, как преобразование.

Тем не менее, вы можете сделать несколько хороших практик, доступных в Codeigniter, чтобы ваш код выглядел как родной код Codeigniter, который использует помощники.

Вот хороший способ начать с here

Приходя к вашему вопросу

Я хотел бы предложить вам передать эти значения из контроллера с видом, как этот

$data = array(
    'value' => $row->jadwalkal, 
    'someotherkey' => 'someothervalue', 
); 

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

и внутри я бы сделал такие условия, как this

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

echo $value; 

операция будет выглядеть с вашей точки зрения

Вот Clear Синтаксис

<?php if ($username == 'sally'): ?> 

    <h3>Hi Sally</h3> 

<?php elseif ($username == 'joe'): ?> 

    <h3>Hi Joe</h3> 

<?php else: ?> 

    <h3>Hi unknown user</h3> 

<?php endif; ?> 

Вот преобразования для вас;)

<?php if ($value < 0): ?> 
<div class="label label-danger"><?php echo "Telat $hari hari";?></div> 
<?php elseif ($value < 7): ?> 
<div class="error message"><?php echo "Tinggal $hari hari";?></div> 
<?php else: ?> 
<div class="error message"><?php echo "Masih $hari hari";?></div> 
<?php endif; ?> 

Примечание:

Я дал простой пример использования if .. else операций

Вы должны изменить в соответствии с вашими потребностями.

+0

спасибо @Sulthan Allaudeen, я уже знаю сюжет, но произошла ошибка в $ selisih = strtotime ($ tgl1) - strtotime ($ tgl2); –

+0

Вы хотите получить результат за считанные секунды? –

+0

Вот результат, если вам нужно за считанные секунды https://eval.in/485238 –

1

В вашем случае вы должны использовать контроллер и вид .. Объявите все переменные в чем-то контроллер, как это вот пример:

Контроллер: main.ph

class Main extends CI_Controller { 

    function __construct() { 
     parent::__construct(); 
     date_default_timezone_set('Asia/Manila'); 
    } 

    public function sample() 
    { 
     $u = date("Y-m-d"); //I just make sample value here 
     $tgl1 = $u; 
     $tgl2 = date("Y-m-d"); 
     $selisih = strtotime($tgl1) - strtotime($tgl2); 
     $data['hari'] = $selisih/(60*60*24);  

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

Вид: образец. php

if ($hari < 0){ 

     echo '<div class="label label-danger">Telat '. $hari .' hari</div>'; 

    }else if($hari < 7) { 

     echo '<div class="error message">Tinggal '. $hari. ' hari</div>'; 

    }else{ 

     echo '<div class="error message">Masih '. $hari . 'hari</div>'; 
    } 
+0

thanks @ user5666946, я могу понять сценарий, который вы написали, но в скрипте есть ошибка $ selisih = strtotime ($ tgl1) - strtotime ($ tgl2); Сообщение: strtotime() ожидает, что параметр 1 является строкой, массив задан –

+0

ok позвольте мне перепроверить эту проблему :) –

+0

Могу ли я увидеть значение, которое вы положили в strtotime() –

Смежные вопросы