Nasıl SimpleXML sonuç toplam sayısını sınırlandırabilir?

4 Cevap php

Ben ilk 5 sonuçlarına sınırlamak için arıyorum returned here.

Bu çalışır, ancak bu veri kümesini sınırlamak değildir:

<?php

foreach($sxml->status as $status){
$name = $status->user->name;
$image =$status->user->profile_image_url;
$update =$status->text;
$url = "http://twitter.com/" .$status->user->screen_name;

echo "<li><a href=\"" . $url . "\"><img src=\"" . $image . "\" alt=\"" . $name . " image\" />" . $name . " </a> " . $update . "</li>";

}

?>

Bu denedim:

<?php

for($n = 0; $n <= 5; $n++){
$name = $sxml->$status[$n]->user->name;
$image = $sxml->$status[$n]->user->profile_image_url;
$update = $sxml->$status[$n]->text;
$url = "http://twitter.com/" . $sxml->$status[$n]->user->screen_name;

echo "<li><a href=\"" . $url . "\"><img src=\"" . $image . "\" alt=\"" . $name . " image\" />" . $name . " </a> " . $update . "</li>";

}

?>

ve gerçekten bu tür emin çalışmıyor Zhen'de. Ben sadece yaparsanız:

<?php echo $sxml->status[0]->user->name ?>

sonra doğru sonuç almak. Döngüsü için içinde bunu çalışırken Ama null olsun.

Süre Belki bir çeşit? Tamamen farklı bir kurulum? Çok teşekkürler herhangi bir yardım için bu üzerinde verebilir.

4 Cevap

Bu değiştirin:

for($n = 0; $n <= 5; $n++){
$name = $sxml->$status[$n]->user->name;
$image = $sxml->$status[$n]->user->profile_image_url;
$update = $sxml->$status[$n]->text;
$url = "http://twitter.com/" . $sxml->$status[$n]->user->screen_name;

echo "<li><a href=\"" . $url . "\"><img src=\"" . $image . "\" alt=\"" . $name . " image\" />" . $name . " </a> " . $update . "</li>";

}

Buna:

for($n = 0; $n <= 5; $n++){
$name = $sxml->status[$n]->user->name;
$image = $sxml->status[$n]->user->profile_image_url;
$update = $sxml->status[$n]->text;
$url = "http://twitter.com/" . $sxml->status[$n]->user->screen_name;

echo "<li><a href=\"" . $url . "\"><img src=\"" . $image . "\" alt=\"" . $name . " image\" />" . $name . " </a> " . $update . "</li>";

}

Eğer yanlışlıkla bu yazıyordu:

<?php echo $sxml->$status[0]->user->name ?>

Bizim $status[0] değişken değişken olarak ve tabii çalışıyordu nerede o var ve null / böylece tanımsız değildir.

Her şeyi değiştirerek çalışır bir şey, neden overcomplicate şeyler olsaydı? Sadece ilk N girişleri için işlem sınırı.

$i = 0;
foreach ($sxml->status as $status) {
    if (++$i > 5) {
        // stop after 5 loops
        break;
    }
    // the rest is identical
}

Btw, $n = 0; $n <= 5; $n++ ilk 6 girişleri, değil 5 sınırlayacaktır.

$n = 0; $n < 5; $n++ için sorular yapacağız.

Ben de bu denedim ve harika :-) çalışıyor

foreach ($xml->item as $item) { if (++$i > 5) { break; } $item->title . '
'; } //foreach()

I = 0 $ i kullanarak değilim Not; o ;-) varsayılan olduğunu bilmek gibi görünüyor

Bunu bazı biri yardımcı olur umarım.