【问题标题】:Print or Display PHP array in Browser Console or in Javascript在浏览器控制台或 Javascript 中打印或显示 PHP 数组
【发布时间】:2017-07-08 13:40:35
【问题描述】:

我需要使用 javascript 在浏览器控制台中打印 php 数组

在这里我分享了我的代码

<?php
function browser_console($data) {
    echo "<script>console.log('" . $data . "');</script>";
}

如果有人知道最好的代码,请告诉我。

谢谢

【问题讨论】:

  • 不是点击...当页面加载它应该打印..
  • 你应该清楚地说明问题 - 我假设在这种情况下你根本无法让它工作并且什么也没看到。
  • 谁在执行 browser_console?
  • 我明白了,谢谢你们......

标签: javascript php arrays


【解决方案1】:

尝试使用json_encode()

例子

echo "<script>console.log('" . json_encode($data) . "');</script>";

【讨论】:

  • 小心,您将$data 数组作为字符串传递。
【解决方案2】:

您可以使用json_encode 来解析 json 中的数组并能够从 javascript 中读取它:

PHP 文件:

<?php 

$data = array(
    "data" => "Hello",
    "data1" => "World"
);

echo "<script>console.log(".json_encode($data).");</script>";

Web 控制台中的输出:

对象{数据:“你好”,数据1:“世界”}

【讨论】:

  • @Kavin。很高兴听到它,但这个解决方案是不同的。在这里,您可以使用来自 javascript 的 json 对象。在接受的解决方案中,json 对象作为字符串传递给 javascript。
【解决方案3】:

我正在使用

echo "<script>console.log(".json_encode(var_export($object, true)).");</script>";

因为它允许您显示复杂的 PHP 对象,而不仅仅是数组。

【讨论】:

  • 这是唯一对我有用的答案。
【解决方案4】:

除了其他人所说的之外,尝试添加JSON.parse - 这样它就会将console.logged 作为一个对象,这意味着您可以像这样在 Chrome 中扩展它并导航它。

 echo "<script>console.log(JSON.parse('" . json_encode($data) . "'));</script>";

来源https://alligator.io/js/json-parse-stringify/


注意:我知道这个问题是关于数组的,所以字符串可能没问题,但要表示更复杂的对象,这会更好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-24
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    • 2016-08-21
    相关资源
    最近更新 更多