【问题标题】:Parsing a Separate PHP Array in Javascript在 Javascript 中解析一个单独的 PHP 数组
【发布时间】:2011-04-04 06:55:51
【问题描述】:

所以,作为一种学习练习,我正在尝试将我正在为某人工作的网站移植到 Ajax(具体来说,真的,只是添加 Javascript 以便页面是动态的,而不是需要不断地重新加载)。

不幸的是,我有一些脚本我想保留为 PHP(例如,在给定受害者数组的情况下更新数据库的脚本),因为我需要它与数据库交互,这意味着数组必须保持 PHP(我认为)。

所以,给定这个文件,

<?php

$victims = array(

    // Animals
    "chickens",
    "horses",
    "cows",

    // Supernatural
    "werewolves",
    "zombies",
    "vampires",
    "phantoms",

    // Human
    "U.S. Congressmen",
    "performance artists",

    // Inanimate, non-mechanical
    "pieces of fencepost",
    "barnhouses",

    // Mechanical
    "robots",
    "cyborgs"

);

?>

有没有办法使用 Javascript 访问该文件并提取值?

或者,想想看,将受害者列表存储为 XML 文件以便 PHP 和 Javascript 都可以读取它会更好吗?或者,我该怎么做呢?

【问题讨论】:

  • 您不能将“PHP 移植到 AJAX”,它们是两种不同的技术,在功能上没有重叠。 AJAX,或者特别是 JavaScript,不会“进入文件”;它只能提出请求。以 JavaScript 可以理解的格式(例如 XML 或 JSON)输出数据取决于您的服务器端语言 (PHP)。
  • 对不起,我措辞不正确。我正在我的网站上实现 ajax。我只是碰巧重写了整件事。

标签: php javascript mysql xml ajax


【解决方案1】:

阅读JSON 并查看json_encode() PHP5。

您可以将 PHP 数组转换为 JSON,这是一个字符串。然后将该字符串打印到您的页面中并与您的 Javascript 一起使用

<script>
     var jsonarray = <?php echo json_encode($array); ?>;
     // now you can use jsonarray in your javascript
</script>

这在为 Ajax 请求返回数据时特别有用

<script>
     var jsonarray = <?php echo json_encode(array("status" => "success", "message" => "Something was completed OK")); ?>;
</script>

【讨论】:

    猜你喜欢
    • 2013-04-13
    • 2011-04-22
    • 2011-06-17
    • 1970-01-01
    • 2012-09-11
    • 1970-01-01
    • 2021-07-01
    • 2020-03-25
    • 2017-04-15
    相关资源
    最近更新 更多