2014-10-08 53 views
-2

試圖呼應以下PHP:如何呼應同時包含「和」

echo (
<script> 
$(document).ready(function() { 
    $('#example').dataTable({ 
    "bPaginate": false, 
    "order": [[ 3, "asc" ]], 
    "dom": '<"top"lp>', 
    "aoColumnDefs": [ 
      { 'bSortable': false, 'aTargets': [ 0 ] } 
     ], 
    "aoColumns" : [ 
      { sWidth: '3%' }, 
      { sWidth: '45%' }, 
      { sWidth: '45%' }, 
      { sWidth: '7%' } 
     ] 
    }); 
    oTable = $('#example').dataTable(); 
$('#dataTables_filter').keyup(function(){ 
     oTable.fnFilter($(this).val()); 
}) 
}); 
</script> 
); 

正如你可以看到它包含了很多'"方式往往串,這將是一個痛苦的添加一個\正確回聲它是否有任何其他方式?我在stackoverflow中搜索,並沒有發現任何東西到目前爲止...

+0

你爲什麼用'echo'包裝它? – Daan 2014-10-08 14:04:34

+0

你可以從PHP中退出,或者使用HereDoc – raser 2014-10-08 14:04:55

+0

@Daan向你展示我想要回顯的內容 – rez 2014-10-08 14:04:55

回答

1

只有在需要的時候才能進入php模式。

1

離開PHP模式。只有當你需要做數據處理時回到它或訪問變量。

function functionName() { 
    ?> 
     <script> 
      // free text 
      var foo = <?php echo json_encode($some_variable); ?>; 
     </script> 
    <?php 
} 
+0

我需要在php函數中做到這一點 – rez 2014-10-08 14:05:53

+0

@Shiro你可以在函數中從PHP中逃脫,它會運行就像調用'echo'或'print'一樣 – raser 2014-10-08 14:07:33

+0

@Shiro它將在一個函數內部工作以替換回顯。 – worldofjr 2014-10-08 14:08:17

2

用定界符字符串:http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

所有裏面會是作爲一個字符串沒有引號:

echo <<<EOT 
<script> 
$(document).ready(function() { 
    $('#example').dataTable({ 
    "bPaginate": false, 
    "order": [[ 3, "asc" ]], 
    "dom": '<"top"lp>', 
    "aoColumnDefs": [ 
      { 'bSortable': false, 'aTargets': [ 0 ] } 
     ], 
    "aoColumns" : [ 
      { sWidth: '3%' }, 
      { sWidth: '45%' }, 
      { sWidth: '45%' }, 
      { sWidth: '7%' } 
     ] 
    }); 
    oTable = $('#example').dataTable(); 
$('#dataTables_filter').keyup(function(){ 
     oTable.fnFilter($(this).val()); 
}) 
}); 
</script> 
EOT; 

小心寫結束標籤「EOT」沒有任何縮進。

+0

'echo'<<< EOT sometext EOT;''那樣嗎? – rez 2014-10-08 14:09:33

+0

不需要引號,請檢查php手冊頁 – Chococroc 2014-10-08 14:10:45

1
$str = <<<EOF 
<script> 
$(document).ready(function() { 
    $('#example').dataTable({ 
    "bPaginate": false, 
    "order": [[ 3, "asc" ]], 
    "dom": '<"top"lp>', 
    "aoColumnDefs": [ 
     { 'bSortable': false, 'aTargets': [ 0 ] } 
    ], 
     "aoColumns" : [ 
     { sWidth: '3%' }, 
     { sWidth: '45%' }, 
     { sWidth: '45%' }, 
     { sWidth: '7%' } 
    ] 
}); 
oTable = $('#example').dataTable(); 
$('#dataTables_filter').keyup(function(){ 
    oTable.fnFilter($(this).val()); 
}) 
}); 
</script> 
EOF; 

echo $str;