Получение XML-элемента на основе значения атрибута

Привет. У меня есть XML-файл и вы хотите использовать PHP для отображения только medium размера. Часть XML выглядит так:

 <image size="small">/small23.png</image> <image size="medium">/medium23.png</image> <image size="large">/large23.png</image> 

Я хотел бы отобразить изображение на странице с помощью <img src="" /> , но я не уверен, как разместить только средний образ. Внутри прохода, проходящего через все остальные элементы, я пробовал это:

 if($file->image->attributes()->size == "medium") echo "<img src=$file->image />"; 

но ничего не нарисовано.

благодаря

Основываясь на вашем примере, я предполагаю, что вы используете SimpleXML, поэтому попробуйте следующее:

 $mediums = $file->xpath("image[@size='medium']"); if (count($mediums)) { echo '<img src="' . (string) $mediums[0] . '" />'; } 

 $done = false; foreach($file->image as $img) { foreach($img->attributes() as $key => $value) { if($key == "size" && $value == "medium") { echo "<img src = {$file->image} />"; $done = true; break; } } if($done) { break; } } 

Это может сработать, попробовать и сообщить.