javascript不接受来自php的布尔值或null
我正在努力学习javascript。我有以下代码:javascript不接受来自php的布尔值或null,javascript,php,Javascript,Php,我正在努力学习javascript。我有以下代码: <?php $a = true; $b = false; ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script>
<?php
$a = true;
$b = false;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
window.variable = {
a: <?php $a ? true : false ?>,
b: <?php $b ? 1 : null ?>
}
console.log(variable);
</script>
</body>
</html>
我哪里做错了
a: <?php $a ? true : false ?>,
b: <?php $b ? 1 : null ?>
但是,对于一种更具弹性的方法,由于您要在JavaScript中使用输出,请改用json_encode
:
a: <?php echo json_encode($a ? true : false) ?>,
b: <?php echo json_encode($b ? 1 : null) ?>
a:,
b:
或者,更好的是,让PHP输出整个JS对象:
window.variable = <?php echo json_encode([
'a' => $a ? true : false,
'b' => $b ? 1 : null,
]); ?>;
window.variable=;
记住你在构建文本;使用“echo”以字符串形式输出正确的值
<?php
$a = true;
$b = false;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
window.variable = {
a: <?php echo $a ? "true" : "false" ?>,
b: <?php echo $b ? "1" : "null" ?>
}
console.log(variable);
</script>
</body>
</html>
window.variable={
甲:,,
b:
}
console.log(变量);
您必须回显该值。您需要对PHP变量进行json编码,例如a:,
标签仅用于执行PHP。它不会向文档输出任何内容。你需要使用
window.variable = <?php echo json_encode([
'a' => $a ? true : false,
'b' => $b ? 1 : null,
]); ?>;
<?php
$a = true;
$b = false;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
window.variable = {
a: <?php echo $a ? "true" : "false" ?>,
b: <?php echo $b ? "1" : "null" ?>
}
console.log(variable);
</script>
</body>
</html>