【问题标题】:XML Output Shows Side-By-SideXML 输出并排显示
【发布时间】:2014-09-12 16:58:26
【问题描述】:

我有一个使用 XML 工作的地理定位 API,示例如下:http://freegeoip.net/xml/31.44.188.50

我在我的网站上使用了这个 XML api,所以我制作了一个地理位置扫描仪,但由于某些原因,当它输出时,IP/国家/邮政编码等。它并排显示,这令人困惑,我的问题是如何使输出低于彼此或在表中。

我的代码:

    <input type="text" name="username" style="text-align: center;" placeholder=" IP address" />
    <input type="submit" name="submit" class="" value="Resolve" />

.`

if (isset($_POST['submit'])) {
$name = $_POST['username'];
$blacklist = array("100.100.100","123.123.123");
$ip = $_SERVER['REMOTE_ADDR'];
if(in_array($name,$blacklist))
{
    echo "No";
else
$api1 = file_get_contents("http://freegeoip.net/xml/$name");
echo "<div style='display: block; color: red; font-weight: bold;>'  $api1  </div>";


}
}

?>

看起来就是这样:31.44.188.50 NL 荷兰 07 Noord-Holland Amsterdam 52.35 4.9167

这就是我想要的:

  • IP地址:31.44.188.50
  • 国家:荷兰荷兰
  • 城市:北荷兰阿姆斯特丹

【问题讨论】:

  • 您必须阅读带有扩展名或库(如 DOM 文档或 SimpleXML)的文件内容才能轻松完成此操作。谷歌它们,它们真的很容易用于阅读任务
  • @ClémentMalet 您好,感谢您的反馈,您能帮我做这件事并使用 SimpleXML 修改代码,以便它可以显示在表格中吗?因为我不知道如何做到这一点。

标签: php html css xml echo


【解决方案1】:

使用 SimpleXML:

$xml = simplexml_load_file("http://freegeoip.net/xml/31.44.188.50");
echo 'IP : ', $xml->Ip, '<br>';
echo 'Country code : ', $xml->CountryCode, '<br>';
echo 'Country name : ', $xml->CountryName, '<br>';
echo 'City : ', $xml->City, '<br>';

输出:

IP : 31.44.188.50
Country code : NL
Country name : Netherlands
City : Amsterdam

更多示例和文档说明: http://php.net/manual/en/book.simplexml.php

【讨论】:

    猜你喜欢
    • 2020-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多