有没有办法在javascript中运行输出php动作到变量?

时间:2013-07-25 22:45:19

标签: php javascript

晚上好网络人士;)

  1. 我有一系列Javascript命令,它们将使用不同的方法设置变量。
  2. 从XML文件中,我已将URL和站点名称的内容输出到溢出表。
  3. 这会创建带有工具提示等的超链接,输出到页面中心的框架。
  4. 我被困在以下方面:

    var ipaddress = [OBTAIN IPADDRESS OF SITE FROM XML FILE???];
    

    从XML文件中,我想运行PHP代码部分以获取站点的IPAddress,将结果输出到表格单元格,然后移动到XML文件中的下一条记录。

    这是我想用来获取各种网站IPAddress的PHP(它工作得很漂亮):

        <?php
        $ipInfo = dns_get_record('google.co.uk', DNS_A);
        $ip = $ipInfo[0]['ip'];
        print_r($ip);
        ?>
    

    所以主要问题是这个....如何在读取XML文件并设置IPAddress变量后运行上面的PHP编码?我有意义吗:S

2 个答案:

答案 0 :(得分:0)

这很简单。在PHP中,只需执行:

header('Content-Type: application/javascript');
echo 'var ipaddress=', json_encode($ip), ';'

始终对要传递给JavaScript的任意数据进行JSON编码,以便自动进行转义。

现在,您必须以某种方式加载此脚本。一种简单的方法是将其放在HTML中:

<script src="yourScript.php"></script>

要明确的是,您没有从JavaScript运行PHP。您正在使用PHP动态创建JavaScript。

答案 1 :(得分:0)

重申Fire-Dragon-DoL的评论,以一种可以帮助你开始的方式。

<head>
... other stuff

<script type="text/javascript">
<?php
    $ipInfo = dns_get_record('google.co.uk', DNS_A);
    $ip = $ipInfo[0]['ip'];
    echo 'var ipAddress = "' . $ip . '";';
?>
</script>
</head>
<body>
.... all your existing stuff

所以你基本上是在服务器上运行的PHP代码中创建javascript,但是因为它放在文档中,就像你手动将它写入html文档的头部一样。

变量ipAddress将可用于所有其他javascript,因为它将全局放置。所以你可以在任何其他javascritp中使用它,在这个新的部分后加载。