üçlü koşulu ile foreach döngüsü nasıl çalıştırılacağı

1 Cevap php

i have two foreach loop to display some data, but i want to use a single foreach on basis of database result.

means if there is any row returns from database then forach($first as $fk=>$fv) should execute otherwise foreach($other as $ok) should execute. i m unsing below ternary operator which gives parse error

$n=$db->numRows($taskData); // databsse results

<?php ($n) ? foreach ($first as $fk=>$fv) : foreach ($other as $ok) 
{ ?>
<table><tr><td>......some data...</td></tr></table>
<?php } ?>

nasıl üçlü operatörü veya başka bir fikir aracılığıyla bu durumu işlemek için bana tavsiye lütfen.

Teşekkürler

1 Cevap

Kullanın ve sonra ikinci seçeneği için değer yerine $ok olarak $fv kullanmak için diziyi seçmek için koşullu operatörünü kullanın.

foreach ( ($n ? $first : $other) as $fk => $fv )

Bir durum ve tamamen farklı değişkenler ile seçilmiş olan iki tamamen farklı döngüler olması gerçekten {[ve $n, hangi kontrol olmadan emin olmaz gibi gerçekten kafa karıştırıcı kod yol açacak kadar iyi bir fikir olmaz (1)]}, $fv ve $ok belirlenmiştir.

Eğer durumuna bağlı olarak farklı bir şeyler yapmak gerekiyor yoksa belki fonksiyonları içine aynı kod bölümleri daha iyi bir fikir olurdu?