Я пытаюсь сохранить значение php в моей переменной javascript. Но этот код дает мне синтаксическую ошибку. Правильно ли код?Сохранение значения php в переменной javascript
var b = <?php echo $tagValue;?>;
alert("B is " +b);
Я пытаюсь сохранить значение php в моей переменной javascript. Но этот код дает мне синтаксическую ошибку. Правильно ли код?Сохранение значения php в переменной javascript
var b = <?php echo $tagValue;?>;
alert("B is " +b);
Вы должны убедиться, что ваш веб-сервер интерпретирует этот файл как файл php. то вы должны адаптировать свой код, потому что это выглядит, как вы могли бы иметь ошибку в коде JS в конце концов:
var b = "<?php echo $tagValue;?>";
alert("B is " +b);
(я добавил кавычки). Не применяется, если вы уверены, что $tagValue
является только числовым.
В случае, если вы действительно не знаете, какую ценность вашего $tagValue
есть или вы просто хотите, чтобы убедиться, что вы не подведете, вы должны использовать json_encode($tagValue)
:
var b = <?php echo json_encode($tagValue);?>;
alert("B is " +b);
Пожалуйста, обратите внимание, что в случае $tagValue
является массив/объект, ваш js-alert не будет очень полезен :)
Вы должны упомянуть, что переменная, содержащая символ двойной кавычки, нарушит синтаксис вывода javascript. Кодирование JSON намного безопаснее. –
сделать функцию, возможно, может помочь u. это пример
// your php code
$tagValue = 'value';
getValue($tagValue);
Это не отвечает на вопрос. – dawez
Самый простой способ я нашел, чтобы сделать это, не беспокоясь о характер побега или XSS, чтобы преобразовать содержимое переменной JSON. Все, что требуется, - echo json_encode ($ tagValue); вместо echo $ tagValue;
это файл .js', файл '.php' или файл .js.php'? если он не является файлом '.php', это не будет работать – user2415992
Также - более простой способ передать переменную PHP в Javascript будет через скрытое поле – user2415992
« этот код дает мне синтаксическую ошибку »и почему не нужно, Вы публикуете свою ошибку? – Dinistro