php
  • html-entities
  • 2013-08-31 33 views 1 likes 
    1

    所以,我有我試圖塞進一個變量此相對/ URL,這樣我可以在其他地方把它打印出來:HTML實體和角撐問題

    $relnext = "<link rel='next' 
            href='javascript:".$content_pager->PagerName 
                . "_form." 
                . $content_pager->PagerName 
                . "PagerPage.value=\"" 
                . $content_pager->Page+1 
                . "\"; " 
                . $content_pager->PagerName 
                . "DoSubmit();' />"; 
    

    正因爲如此,當我把它打印出來,我得到的全部是:

    1「; MediaBoxContentDoSubmit();' />

    '出現' 它的一些研究,我要用htmlentities後,但:

    echo htmlentities($relnext); 
    

    還只是生產:

    1"; MediaBoxContentDoSubmit();' /> 
    

    是否有應在此處使用一些其他的功能?

    非常感謝您給予的任何幫助!

    回答

    1

    您有一個操作符p接受/關聯性問題。 +運算符左邊的.運算符在運算符+之前執行,因爲它們都是左關聯的並具有相同的優先級。您希望+運算符(在$content_pager->Page+1中)先執行,然後再運行所有.運算符。

    正因爲如此,要添加一個字符串到數字(1)與+操作,在這種情況下,字符串(一切+之前)將被視爲0。這就是爲什麼第一個字符是1 ,因爲它是"some string"+1的結果,它被解釋爲0+1

    所以,你的第一個片段應該是:

    $relnext = "<link rel='next' href='javascript: " . $content_pager->PagerName . "_form." . $content_pager->PagerName . "PagerPage.value=\"" . ($content_pager->Page+1) . "\"; " . $content_pager->PagerName . "DoSubmit();' />"; 
    

    注意,$content_pager->Page+1部分現在是在括號中。

    的更多信息:

    +0

    完美。非常感謝您花時間回答我的問題! – CRAIG

    相關問題