Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用javascript打印php数组_Javascript_Php_Json - Fatal编程技术网

如何用javascript打印php数组

如何用javascript打印php数组,javascript,php,json,Javascript,Php,Json,我有一个数组$results,我需要在代码的javascript部分中使用它。我尝试了json_encode(),但没有成功 这是密码 <?php //... include realpath($_SERVER['DOCUMENT_ROOT'] . '/Classes/Controllers/ReportController.php'); $vaccRep= ReportController::getVacRep(); include realpath($

我有一个数组
$results
,我需要在代码的javascript部分中使用它。我尝试了json_encode(),但没有成功

这是密码

<?php
    //...
    include realpath($_SERVER['DOCUMENT_ROOT'] . '/Classes/Controllers/ReportController.php');
    $vaccRep= ReportController::getVacRep();

    include realpath($_SERVER['DOCUMENT_ROOT'] . '/Classes/Controllers/VaccineController.php');
    $names=VaccineController::getVCName();
?>

<canvas id="bar" height="195" width="250" style="width: 250px; height: 195px;"></canvas>
<script>
    //THIS IS THE PART THAT WILL BE THE OTPUT OF THE QUERY

    var barChartData = {
        labels: <?php$obj=json_encode($names); var_dump($obj);?>,
        datasets: [{
            highlightFill: "#45668e",
            highlightStroke: "#45668e",
            fillColor : "#1ABC9C",
            strokeColor : "#1ABC9C",
            data: <?php $obj=json_encode($vaccRep); var_dump($obj);?>
        }]
    };


    new Chart(document.getElementById("bar").getContext("2d")).Bar(barChartData);
    <?php $obj=json_encode($vaccRep); var_dump($obj);?>
</script>

//这是将作为查询的OTPUT的部分
var barChartData={
标签:,
数据集:[{
highlightFill:#45668e“,
强光笔划:“45668e”,
填充颜色:“1ABC9C”,
strokeColor:#1ABC9C“,
数据:
}]
};
新图表(document.getElementById(“bar”).getContext(“2d”)).bar(barChartData);
怎么样

<?php
    echo "<script>";
    echo "var $results = JSON.parse('" . json_encode($results) . "');";
    echo "<script>";
?>

您可以这样尝试以javascript打印php数组

<?php
  $abc=["a","b","c"];
?>
<script type="text/javascript">
  var abc = "<?php echo (implode(',',$abc));?>";
  var abcArr = abc.split(",");
  console.log(abcArr);
</script>

var abc=“”;
var abcArr=abc.分割(“,”);
控制台日志(abcArr);

您可以简单地使用以下代码:

<?php
    $array = ["a", 1, 2, "b,"];
    echo "<script>";
    echo "var data = ".json_encode($array).';';
    echo "</script>";
?>

此代码的输出将为:
var数据=[“a”,1,2,“b,”],将创建正确的javascript数组。

只需使用json\u encode()
在js中回显php数组,如下所示:

$phpArray = array('name'=>'mani','email'=>'test@gmail.com','mobile'=>'123467890');
PHP数组如下所示

Array
(
    [name] => mani
    [email] => test@gmail.com
    [mobile] => 123467890
)

<script>
var jsArray = [];
var jsArray = <?php echo json_encode($phpArray);?>;
console.log(jsArray);
</script>

共享您尝试过的代码。您可以用php对数组进行json编码并在javascript中使用它。您的问题已解决?您不需要使用
json.parse()
,因为
json\u encode()
将生成有效的javascript对象如果此数组中有包含逗号的字符串怎么办?例如,
[“a”,“b”,“c”]
。该数组中将有额外的空字符串,这是不正确的。@YuriyYakym,您有什么建议来防止这种情况发生。我只是提供了一种方法。你的解决方案只有在我们确定我们使用的分隔符不是任何数组元素的一部分的情况下才能使用。是的,完全同意
 Object { name="mani",  email="test@gmail.com",  mobile="123467890"}