Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.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
XML文件的PhP foreach循环_Php_Html_Xml - Fatal编程技术网

XML文件的PhP foreach循环

XML文件的PhP foreach循环,php,html,xml,Php,Html,Xml,我正在尝试将place作为一个变量用于page.php。它将开始加载选项到选择框中大约5秒钟,我实际上可以看到这些选项,然后它会全部删除,我有一个空的选择框。以下是PHP代码: <?php $xml = simplexml_load_file("file.xml"); echo '<form method="get" action="page.php"><select name="place" id="place">'; foreach($xml as $banan

我正在尝试将place作为一个变量用于page.php。它将开始加载选项到选择框中大约5秒钟,我实际上可以看到这些选项,然后它会全部删除,我有一个空的选择框。以下是PHP代码:

<?php
$xml = simplexml_load_file("file.xml");
echo '<form method="get" action="page.php"><select name="place" id="place">';
foreach($xml as $banana)
{
    if(isset($banana->id))
    {
        $id = $banana->id;
        $string = $banana->state . " - " . $banana->name;
        echo '<option value="' . $id . '">' . $string . '</option>';

    }
}
echo "</select>";
echo '<input type="submit" /></form>';

?>
id))
{
$id=$banana->id;
$string=$banana->state.“-”$banana->name;
回显“.$string.”;
}
}
回声“;
回声';
?>
我确信我的XML格式正确,但XML文件有2500多个条目,每个条目看起来像这样:

<container>
    <id>theId</id>
    <state>theState</state>
    <name>theName</name>
</container>

泰德
州
名字
知道为什么不加载吗

注意:有些项目在XML文件中有一个空id,我不想包含这些文件,这就是为什么我检查以确保它已设置。

有几件事

  • 禁用任何javascript并重试——可能有东西绑定到覆盖选择框或其中某个元素的id
  • 通常,您希望在将拉入的文本插入HTML文档之前正确转义它,以防其中有
    之类的内容
请尝试以下操作:

   echo '<option value="' . htmlspecialchars($id) . '">' . htmlspecialchars($string) . '</option>'; 
echo“”。htmlspecialchars($string)。“”;

如果不创建选择框,而只打印($xml)所有条目都显示吗?@Ray是的,它们都显示为print\r($xml);此外,如果您像这样将数据粘贴到HTML中,您需要确保安全,以防id或名称中的字符可能会弄乱HTML<代码>回显“”。htmlspecialchars($string)。“”@Ray它在XML文件中是web安全的,所以我不需要担心,所有内容都是由我而不是用户添加到XML文件中的。不过我真的很感谢您的反馈。您是否有任何Javascript绑定到选择框?禁用javascript和刷新,纯html选择框是否仍然死掉?