Neden benim PHP dize 1 dönüştürülür ediliyor?

1 Cevap php

Tamam, bu yüzden burada hızlı bir hatlarıyla. Ben sayfa numaralarını oluşturmak için bir işlevi var.

Bu:

<?php
die($ani->e->tmpl->pages("/archive", 1, 15, 1, true));
?>

çıkış Single Page gibi beklenenden olacak.

Ama bu:

<?php
$page_numbers = $ani->e->tmpl->pages("/archive", 1, 15, 1, true);
?>
<?= $page_numbers ?>

çıktısı basit bir 1 sayfasına. Neden bir 1'e dönüştürülür oluyor? Ben tam olarak aynı (bir yankı gibi) değişken ve daha sonra çıkış page_numbers için 'Tek Sayfa' dizesini depolamak için beklenebilir.

EDIT: a var_dump($page_numbers) döner Çalışma int(1) ...

İşte bağlamda tüm işlevi:

<?php
// other functions...
function show_list() {
    global $ani;
    $page_numbers = $ani->e->tmpl->pages("/archive", 1, 15, 1, true);
    ob_start();
?>
<!-- content:start -->
<?php
    $archive_result = $ani->e->db->build(array("select" => "*", "from" => "animuson_archive", "orderby" => "0-time", "limit" => 15));
    while ($archive = $ani->e->db->fetch($archive_result)) {
?>
<h2><a href="/archive/article/<?= $archive['aid'] ?>/<?= $archive['title_nice'] ?>"><?= $archive['title'] ?></a></h2>
<!-- breaker -->
<?php
    }
?>
<?= var_dump($page_numbers) ?>
<!-- content:stop -->
<?php
    $ani->e->tmpl->process("box", ob_get_clean());
}
// other functions...
?>

1 Cevap

$ Page_numbers Her iki örnekte de bir tamsayıdır. Başka bir şey oluyor. Sen pages() yönteminin kodunu göndermek gerekir. Ben ölmek için 1 tam geçirmeden beri () 1 (Bu dönüş kodu 1 ile çıkacaktır) o baskı asla, ob_start () tuhaf şeyler yapıyor sanıyorum.

PS: Neden herkes gibi bir yorum yapamıyorum?