php - 解析具有特定内容的 xml 条目
问题描述
我只想读取包含某些内容的 xml 文件,但我的代码似乎在交换数据,而不仅仅是显示我想要的条目。在这种情况下,所有具有“Zahnreinigung”内容的条目。
<Bilder>
<VorherNachher>
<Image>img/vorhernachher/vorhernachher-zahnreinigung.jpg</Image>
<Behandlung>Zahnreinigung</Behandlung>
<Arzt>Dr. Name</Arzt>
</VorherNachher>
$url = "vorhernachher.xml";
$xmldata = @simplexml_load_file($url) or
die ("error ".$url."\n");
$random = array_rand($xmldata->xpath('VorherNachher'), 12);
foreach($random as $key) {
$VorherNachher = $xmldata->VorherNachher[$key];
if ($VorherNachher->Behandlung = ($location['page'])) {
echo "<div><div class='slide01'>";
echo "
<div class='bild-slide'>
<img src='$VorherNachher->Image' alt='Vorher/Nachher $VorherNachher->Behandlung' class='OF-cover'>
</div>
<a href='$ArztLink' class='arzt'><img src='$ArztImg' alt='$VorherNachher->Arzt'>$VorherNachher->Arzt</a>";
echo "</div></div>";
} }
解决方案
我有一个实际有效的新版本。
$sxe = simplexml_load_file("vorhernachher.xml");
foreach($sxe->xpath('//VorherNachher') as $item) {
$row = simplexml_load_string($item->asXML());
$v = $row->xpath('/VorherNachher/Behandlung[. ="'.$vorhernacher.'"]');
if($v[0]){
print "<div><div class='slide01'> ";
print "<div class='bild-slide'><img src='$item->Image' alt='Vorher/Nachher $item->Behandlung' class='OF-cover'></div>
<a href='$ArztLink' class='arzt'><img src='$ArztImg' alt='$item->Arzt'> $item->Arzt</a>";
print "</div></div>";
}
}
推荐阅读
- c# - Winform 图表 - 固定 X 轴
- reactjs - 如何使用axios调用GET api在BODY中发送数据?
- python - 迭代for循环时如何将多个系列(熊猫)添加在一起?
- javascript - 如何使用 Vuejs 进行 Onload 事件——特别是如何将脚本放入方法中以及在 html 中获取调用的方式
- javascript - 从多个选择下拉列表中获取选定的选项值
- angular - getComputedStyle() 是获取 Angular 中 css 设置样式的唯一方法吗?
- javascript - 在 JSON 的每个元素处推送不同的值
- php - 将“if”块中的变量传递给另一个 PHP 文件
- html - Angular 指令在页面中途停止工作
- evernote - 印象笔记扎皮尔