PHP satır sonuçları Döşeme?

3 Cevap php

Merhaba biçimde sonuç alıyorum

location1 2 4
location2 3 2
location3 0 0
location1 1 0

Bu satır 0 dönen ve 0 gösterilmez bu yüzden nasıl sonuçlar kırpabilir? teşekkür ederim

.................

İşte Mysql sorgu, Ben bu yüzden PHP kullanarak düşündüm MySQL onu trim nasıl bilmiyorum ..

    SELECT hotelas.name, hotelas.address, hotelas.city, hotelas.country, hotelas.hotel_id 
AS hotelid, 
COUNT( DISTINCT apart.apartman_id ) AS number_of_free_ap, 
COUNT( DISTINCT room.apartman_id ) AS num_of_free_rooms
    FROM hotel AS hotelas
    LEFT JOIN apartman AS apart ON ( apart.apartman_hotel = hotelas.hotel_id
    AND apart.occupied =0
    AND apart.what =1 )
    LEFT JOIN apartman AS room ON ( room.apartman_hotel = hotelas.hotel_id
    AND room.occupied =0
    AND room.what =0 )
    GROUP BY hotelas.hotel_id

TABLO alan ne, 0 - odası, 1 - daire

Yani en önemli olanları sayısı sütunlar, ücretsiz oda ve ücretsiz daireler olan arasında bir kaç sütun olsun. Yani 0 oda ve 0 daireler dolu bir test otel var ve ben tüm diğer oteller en az bir oda ya da mevcut bir daire var bu listeden kaldırılır istiyorum.

3 Cevap

Bu bilgileri almak için, veritabanı sorgulama ve sorguyu değiştirebilirsiniz eğer, bunun için iyi bir yer olurdu.

SELECT *
FROM myTable
WHERE
    firstColumn != 0
OR
    secondColumn != 0

Eğer başka bir kaynaktan (CSV ya da bir şey) PHP bu alıyorsanız veya kullanmak, sorgu üzerinde kontrole sahip değilseniz array_filter() :

// i'm assuming each line in your example is an array of values
$myArray = array_filter($myArray, 'noDoubleZeroes');

function noDoubleZeroes($line) {
    return $line[1] != 0 || $line[2] != 0;
}
select * from table
where column1 !=0
or column2 !=0

Yani MySQL trimleyebilirisniz nasıl.

OTOH, bunun gibi bir dizi varsa (bir db sorgulayabilir sonra genellikle bu alacaksınız)

array(array('location1', 2, 4), array('location2', 3, 2))

Sonra dizi üzerinde döngü gerekiyor ve manuel filtreleme yapmak:

$newarrs=array();
foreach($arrs as $values)
{
  if($values[1]!=0 || $values[2]!=0)
    $newarrs[]=$values;
}
return $newarrs;

Ben doğru anladım ise bu yardımcı olacaktır

$columns = explode($resultLine, " ");
$whatYouWant =  $columns[0];