v2.5.2
Giriş yap

İf else kısa kullanımı

resat
332 defa görüntülendi

Merhaba arkadaşlar 6.columns içinde siparis durum 0 ise sipariş oluşturuldu olarak yazdırabiliyorum. Fakat farklı değerlerde var 1 2 3 olarak. Her değere farklı sonuç yazdıracağım. Kısa kullanımda bunu nasıl yapabilirim.

        $columns = array(
        array('db' => 'id', 'dt' => 0),
        array('db' => 'siparisTarih','dt' => 1 , "formatter" =>function($siparisTarih){
            return turkcetarih_formati('j F Y , l, H:i:s',$siparisTarih);
        }),
        array('db' => 'siparisNo','dt' => 2 , "formatter" =>function($siparisNo){
            return "<a href='' class='btn btn-primary'>MZR{$siparisNo}</a>";
        }),
        array('db' => 'siparisUser',  'dt' => 3),
        array('db' => 'siparisFirma',  'dt' => 4),
        array('db' => 'siparisFirma',  'dt' => 5),
        array('db' => 'siparisDurum','dt' => 6 , "formatter" =>function($siparisDurum, $row){
           return ($siparisDurum==0)?'Sipariş Oluşturuldu':'Durum Bulunamadı';
       }),
    );


Cevap yaz
Cevaplar (3)
abdullahx
717 gün önce
$columns = array(
        array('db' => 'id', 'dt' => 0),
        array('db' => 'siparisTarih','dt' => 1 , "formatter" =>function($siparisTarih){
            return turkcetarih_formati('j F Y , l, H:i:s',$siparisTarih);
        }),
        array('db' => 'siparisNo','dt' => 2 , "formatter" =>function($siparisNo){
            return "<a href='' class='btn btn-primary'>MZR{$siparisNo}</a>";
        }),
        array('db' => 'siparisUser',  'dt' => 3),
        array('db' => 'siparisFirma',  'dt' => 4),
        array('db' => 'siparisFirma',  'dt' => 5),
        array('db' => 'siparisDurum','dt' => 6 , "formatter" =>function($val, $row){
            return match ($val) {
            0 => 'Sipariş oluşturuldu',
            1 => 'Sipariş 1 durumunda',
            2 => 'Sipariş 2 durumunda',
            3 => 'Sipariş 3 durumunda',
            default => 'Durum bulunamadı'
            };
       }),
    );

Burada dikkat etmen gereken PHP 8+ kullanmak ve match işlemindeki sıkı tip denetimi sebebiyle 1,2,3 durumlarının veri tabanında tutulduğu kolona göre integer veya string olmasını kontrol ederek bu sayıları tırnak içine almak veya almamak.

tayfunerbilen
717 gün önce

bir fonksiyon olusturup geriye dondurebilirsin:

function getStatus($status) {
    switch($status) {
        case 0:
            return 'Siparis olusturuldu';
        case 1:
            return 'Siparis farkli bir durumda';
        default:
            return 'Durum bulunamadi';
    }
}

 $columns = array(
    array('db' => 'id', 'dt' => 0),
    array('db' => 'siparisTarih','dt' => 1 , "formatter" =>function($siparisTarih){
        return turkcetarih_formati('j F Y , l, H:i:s',$siparisTarih);
    }),
    array('db' => 'siparisNo','dt' => 2 , "formatter" =>function($siparisNo){
        return "<a href='' class='btn btn-primary'>MZR{$siparisNo}</a>";
    }),
    array('db' => 'siparisUser',  'dt' => 3),
    array('db' => 'siparisFirma',  'dt' => 4),
    array('db' => 'siparisFirma',  'dt' => 5),
    array('db' => 'siparisDurum','dt' => 6 , "formatter" =>function($siparisDurum, $row){
       return getStatus($siparisDurum);
   }),
);
emmir2
718 gün önce
$sip_durum[0] = 'Onay Bekliyor';
$sip_durum[1] = 'Onaylandı';
$sip_durum[2] = 'Reddedildi';
<?=$sipdurum[$row['durum']]?>

şeklinde yapabilirsin hocam