php
  • html
  • wordpress
  • 2014-01-30 54 views 1 likes 
    1

    希望你一切安好。target = _Blank在這個PHP代碼

    所以這就是我想要做的。我想在wordpress中添加一個評論插件,可以在target =「_ blank」代碼的新窗口中打開我想要的頁面。

    我相信這就是神奇正在發生的事情,這是原文:

    if ($show_morelink != '') { 
           $review->review_text .= " <a href='".$this->get_jumplink_for_review($review,1)."'>$show_morelink</a>"; 
          } 
    

    這就是我所做的沒有任何成功:

    if ($show_morelink != '') { 
           $review->review_text .= " <a href='".$this->get_jumplink_for_review($review,1)."' target="_blank">$show_morelink</a>"; 
          } 
    

    我在PHP和我是初學者希望有人能幫助我......我知道這並不難......我只是想念一些東西。

    謝謝!

    +0

    不應該'href =''''是'href =「''? –

    +0

    @DanielLisik這將是PHP中的語法錯誤與HTML中的標準違規。兩者都不好;) – Halcyon

    +1

    你可以使用'target ='_ blank''或'target = \「_ blank \」'---評論佔用的空間比「答案」少;-) ---並且它們同樣好。 –

    回答

    3

    你必須逃避你的報價。

    使用以下

    $_morelink != '') { 
         $review->review_text .= "<a href='".$this->get_jumplink_for_review($review,1)."' target=\"_blank\">$show_morelink</a>"; 
        } 
    

    Source處理字符串。

    +3

    (或使用單引號 - 最好是後者) – sircapsalot

    +1

    @sircapsalot amen – jboneca

    0

    你的問題是,你使用雙引號來表示PHP的字符串,所以你不能使用雙引號爲HTML代碼:

    if ($show_morelink != '') { 
        $review->review_text .= " <a href='".$this->get_jumplink_for_review($review,1)."' target='_blank'>$show_morelink</a>"; 
    } 
    

    如果你看一下HTML輸出,你會看到,無論是hreftarget現在使用單引號。

    1

    因爲你的代碼用雙引號括起來,你是他們的突破,當你在目標添加。您可以逃脫這樣的行情用斜線:

    $review->review_text .= " <a href='".$this->get_jumplink_for_review($review,1)."' target=\"_blank\">$show_morelink</a>"; 
    

    或更改使用單引號:

    $review->review_text .= " <a href='".$this->get_jumplink_for_review($review,1)."' target='_blank'>$show_morelink</a>"; 
    

    編輯 你可以做的是圍繞整個字符串中的第三條道路單引號並刪除裏面的單引號和句點形式:

    $review->review_text .= ' <a href="$this->get_jumplink_for_review($review,1)" target="_blank">$show_morelink</a>'; 
    
    0

    我總是喜歡用單引號的HTML c提供可讀性的字符串。

    if ($show_morelink != '') { 
        $review->review_text .= ' 
         <a href="'.$this->get_jumplink_for_review($review,1).'" target="_blank">'.$show_morelink.'</a>'; 
    } 
    
    +0

    這將不起作用..''show_morelink''將從字面上'$ show_morelink'而不是該變量的值 – sircapsalot

    +0

    @sircapsalot謝謝,修復。 –

    +0

    PHP中的單引號和雙引號實際上存在技術差異 - 一個是字符串字面值,另一個不是。可以說,最好的做法是按照他們的意圖使用它們 - 當你需要用變量插入字符串(例如輸出HTML)時,用於文字的文字(關聯數組中的鍵)和雙引號 - 即使這意味着逃避你的輸出字符串。 – CD001

    0

    很多答案;最正確地指出不正確的引用轉義。

    因爲它沒有被提及尚未sprintf()也可以與可讀性幫助,而不是連接字符串。

    $link = $this->get_jumplink_for_review($review,1); 
    $text = sprintf('<a href="%s" target="_blank">%s</a>', $link, $label); 
    
    相關問題