0

ページネーションメカニズムを処理するクラスがあります。出力が間違ってフォーマットされている理由を説明できないため、非常に苦労しているこれら2つの関数があります。私の機能は次のとおりです。

    private function show_links() {
        echo '<div id="news_nav">';
        echo $this->show_prev_link();
        echo $this->show_next_link();       
        echo '</div>';
}   

    private function show_prev_link() {
        if (($this->start + 1) * self::$MAX_POSTS <= $this->total_posts) 
        {
            return '<a href="http://' . $_SERVER['SERVER_NAME'] . 
                            '/inc/sandbox.php?s=' . $this->start+1 . 
                            '" target="_self">&laquo; Previous</a>'; 
        }

private function show_next_link() {
        if (($this->start - 1) * self::$MAX_POSTS >= 0)
        {
            return '<a href="http://' . $_SERVER['SERVER_NAME'] . 
                           '/inc/sandbox.php?s=' . $this->start-1 . 
                           '" target="_self">Next &raquo;</a>'; 
        }
    }

出力は次のとおりです。

1" target="_self">« Previous

なぜそのように切り捨てられたのか、何が原因なのか、本当にわかりません。これを整理するのに役立つことを願っています。

4

1 に答える 1

3

次のように、括弧で囲む必要があります。

($this->start-1)

あなたがこのようなものを持っていること:

return '<a href="http://' . $_SERVER['SERVER_NAME'] . 
                        '/inc/sandbox.php?s=' . ($this->start+1) . 
                        '" target="_self">&laquo; Previous</a>'; 
于 2013-06-02T11:14:42.747 に答える