![](/img/trans.png)
[英]Pass PHP variable to javascript including quotes and javascript
[英]php having issue with including javascript and quotes?
這是我的代碼:
$buffer .= '<legend>'.$thisField.'</legend><input type="text" name="'.$thisField.'" id="'.$thisField.'"/> <a href="javascript:;" onClick="mcImageManager.browse({fields : 'url_abs'});">[Pick file]</a><br /><small>360px W x 240px H</small><br /><br />';
它打破了語法錯誤,意外的 T_STRING
我已經嘗試過單引號、雙引號和 escaping 的每種組合?
我不知所措,我錯過了什么?
謝謝!!
只需使用反斜杠轉義字符串中的引號即可:
$buffer .= '<legend>'.$thisField.'</legend><input type="text" name="'.$thisField.'" id="'.$thisField.'"/> <a href="javascript:;" onClick="mcImageManager.browse({fields : \'url_abs\'});">[Pick file]</a><br /><small>360px W x 240px H</small><br /><br />';
請參閱PHP 手冊:
要指定文字單引號,請使用反斜杠 (\) 對其進行轉義。
在這種情況下,建議使用HEREDOC字符串,以提高可讀性:
$buffer .= <<<END
<legend>$thisField</legend>
<input type="text" name="$thisField" id="$thisField"/>
<a href="javascript:;" onClick="mcImageManager.browse({fields : 'url_abs'});">[Pick file]</a>
<br /><small>360px W x 240px H</small><br /><br />
END;
這避免了必須轉義任何引號。 您可以在這樣的塊中按原樣編寫 $variables 。
正如熒光筆告訴你的那樣, php 將在{fields: 'url_abs'}
附近失敗。 您在單引號字符串中,因此您必須轉義字符串中的單引號: {fields: \'url_abs\'}
,
問題是 url_abs 周圍的單引號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.