php
  • javascript
  • 2011-09-16 49 views 2 likes 
    2

    是一個正確的PHP函數回聲JavaScript字符串?
    我想PHP函數來呼應這樣的事情:PHP函數回聲JavaScript字符串

    <!--/* OpenX Interstitial or Floating DHTML Tag v2.8.7 */--> 
    <script type="text/javascript">// <![CDATA[ 
    //<![CDATA[ 
    var ox_u = 'extremely_long_url_string'; 
    if (document.context) ox_u += '&context=' + escape(document.context); 
    document.write("<scr"+"ipt type='text/javascript' src='" + ox_u + "'></scr"+"ipt>"); 
    // 
    // ]]></script> 
    

    我知道我可以把它所有在同一行,用\逃脫所有的引號,但我正在尋找一個更優雅的&有效解。

    +2

    '「 feeela

    回答

    3

    用定界符:

    $a=<<<BLA 
    <!--/* OpenX Interstitial or Floating DHTML Tag v2.8.7 */--> 
    <script type="text/javascript">// <![CDATA[ 
    //<![CDATA[ 
    var ox_u = 'extremely_long_url_string'; 
    if (document.context) ox_u += '&context=' + escape(document.context); 
    document.write("<scr"+"ipt type='text/javascript' src='" + ox_u + "'></scr"+"ipt>"); 
    // 
    // ]]></script> 
    BLA; 
    

    ,然後你可以簡單地

    echo $a; 
    
    4

    使用heredoc-syntax

    Heredoc文本的行爲就像雙引號字符串,不帶雙引號。這意味着heredoc中的引號不需要被轉義[...]。

    +4

    或者只是把'?你之間JS>'和'<?php'。 – Rijk

    2

    沒有什麼特定的或只爲JavaScript,但每個輸出功能適用的JavaScript。您可以只打印出<?php ?>標籤像

    <?php 
    session_start(); //just an example PHP code 
    ?> 
    <!--/* OpenX Interstitial or Floating DHTML Tag v2.8.7 */--> 
    <script type="text/javascript">// <![CDATA[ 
    //<![CDATA[ 
    var ox_u = 'extremely_long_url_string'; 
    if (document.context) ox_u += '&context=' + escape(document.context); 
    document.write("<scr"+"ipt type='text/javascript' src='" + ox_u + "'></scr"+"ipt>"); 
    // 
    // ]]></script> 
    
    相關問題