处理无序列表PHP-HTML
下午好 我有一个页面看起来像这样 -edit-需要注意的是,代码是动态的。我的用户正在上传这些图片,然后通过回音创建一个新的列表对象,其中包含img代码。我不能“硬编码”,因为列表永远不会相同。我将有客户上传50+图片,所以他们将有50+列表项目。我希望能够做的是找到一种方法,将我创建的列表转换成字符串,或者我愿意接受其他建议处理无序列表PHP-HTML,php,html,xml,html-lists,Php,Html,Xml,Html Lists,下午好 我有一个页面看起来像这样 -edit-需要注意的是,代码是动态的。我的用户正在上传这些图片,然后通过回音创建一个新的列表对象,其中包含img代码。我不能“硬编码”,因为列表永远不会相同。我将有客户上传50+图片,所以他们将有50+列表项目。我希望能够做的是找到一种方法,将我创建的列表转换成字符串,或者我愿意接受其他建议 <ul> <li class="ui-state-default"><img code for img 1></li> &
<ul>
<li class="ui-state-default"><img code for img 1></li>
<li class="ui-state-default"><img code 2></li>
<li class="ui-state-default"><img code 3></li>
<li class="ui-state-default"><img code 4></li>
<li class="ui-state-default"><img code 5></li>
<li class="ui-state-default"><img code 6></li>
<li class="ui-state-default"><img code 7></li>
</ul>
我想做的是找到一种方法,通过PHP以正确的顺序处理这个列表
即从该列表创建一个XML
我熟悉SimpleXML,但很难让PHP看到列表。我的问题是如何让PHP读取该列表,以便创建它的xml
我试过几个Ajax示例,从我看到的示例来看,Ajax非常复杂
感谢您提供的任何帮助,请不要只留下“使用DOM”的评论,而不作进一步解释。我有办法做到这些
编辑------------
我最后一次尝试是这样的
<?php
$dom = new DOMDocument();
$dom->loadHTML($data);
$unorderedList = $dom->getElementsByTagName('ul');
foreach ($unorderedList->item(0)->getElementsByTagName('li') as $unorderedList) {
echo $unorderedList->nodeValue.'<br />';
}
?>
但是,我无法让PHP看到列表……我的问题实际上是如何让PHP看到上面HTML(同一页)中的列表,而不是如何创建xml 您正在遍历所有
元素,但正在查找图像标记。所以你需要更深一层
if ($unorderedList->hasChildNodes()) {
foreach ($unorderedList->childNodes as $image) {
var_dump($image->getAttribute('src'));
}
}
将
设置为$varname
与您的主变量不同,$unorderedList->nodeValue
只是空的(没有文本节点内容,我承认属性是“此节点的值,取决于其类型”),它将输出:
<br /><br /><br /><br /><br /><br /><br />
如果您需要该内容的html:
foreach ($unorderedList->item(0)->getElementsByTagName('li') as $listItem) {
foreach($listItem->childNodes as $node){
echo $dom->saveHTML($node);//use $dom->saveXML($node) if in PHP < 5.3.6
}
echo '<br />';
}
foreach($unorderedList->item(0)->getElementsByTagName('li')作为$listItem){
foreach($listItem->childNodes作为$node){
echo$dom->saveHTML($node);//如果在PHP<5.3.6中,则使用$dom->saveXML($node)
}
回声“
”;
}
您能告诉我们您尝试过什么吗?“处理列表”是一个相当模糊的概念。你到底想做什么,为什么SimpleXML不能为你工作呢?我刚刚编辑了一下,也许这会给你一些启示。那么在你的例子中,什么是$data
?现在还不清楚您试图从何处获取HTML。我想这就是我要问的问题-如何将php代码上方的列表拉成php可以理解的格式。我尝试了这个(简单的复制和粘贴),但没有收到任何输出。但我可能遗漏了什么。我对DOM没有任何经验。