Как получить содержимое тега <image_url> из xml в массиве с помощью php?

у меня проблемы с моим xml файлом:

<?xml version = "1.0" encoding = "utf-8"?>
<smilies_export>
  <smilie_categories>
    <smilie_category id = "b-chan" title = "B-chan" display_order = "0"/>
  </smilie_categories>
  <smilies smilie_category_id = "b-chan">
    <smilie title = "b1" display_order = "0" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-dqj-1Y4trJI/WYsTWUJbJ7I/AAAAAAAAAKg/BFD860a7CL4FhTlziRej2v1OYPPlHTwdgCHMYCw/s0/b-chan01.jpg</image_url>
      <smilie_text>:kqt1:</smilie_text>
    </smilie>
    <smilie title = "B-chan2" display_order = "10" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-MMfECwtA-uo/WYsTWxChc8I/AAAAAAAAAKk/0sc44bvNz_wnh3iBjU2GKHmb79i-UB_MACHMYCw/s0/b-chan02.jpg</image_url>
      <smilie_text>:vui:</smilie_text>
    </smilie>
    <smilie title = "B-chan2" display_order = "10" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-fjyoCZ87ar0/WYsTWxgimsI/AAAAAAAAAKo/amG6yTA_VDU_yvlpgSS5eaFHu_efWKu1ACHMYCw/s0/b-chan03.jpg</image_url>
      <smilie_text>:bchan1:</smilie_text>
    </smilie>
    <smilie title = "B-chan2" display_order = "10" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-lz9_qPF9sFM/WYsTXKg-ueI/AAAAAAAAAKs/RuOc2jO6vYAfF_Ik4XXOFzejhhJWylZpACHMYCw/s0/b-chan04.jpg</image_url>
      <smilie_text>:bchan2:</smilie_text>
    </smilie>
    <smilie title = "B-chan2" display_order = "10" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-xGJE1gBZM60/WYsTY8wFWdI/AAAAAAAAAKw/4uq_5yuwpCcCVPQU2GjnezFx-ChoJdCoACHMYCw/s0/b-chan05.jpg</image_url>
      <smilie_text>:bchan3:</smilie_text>
    </smilie>
  </smilies>

  <smilie_categories>
    <smilie_category id = "ro-chan" title = "ro-chan" display_order = "1"/>
  </smilie_categories>
  <smilies smilie_category_id = "ro-chan">
    <smilie title = "b1" display_order = "1" display_in_editor = "1">
      <image_url>https://lh3.googleusercontent.com/-dqj-1Y4trJI/WYsTWUJbJ7I/AAAAAAAAAKg/BFD860a7CL4FhTlziRej2v1OYPPlHTwdgCHMYCw/s0/b-chan01.jpg</image_url>
      <smilie_text>:kqt1:</smilie_text>
    </smilie>
  </smilies>
</smilies_export>

Я бы хотел, чтобы это было так:

$codes = array($smilie_text);
$smileys = array($image_url);
in array $smilie_text & $image_url = (string1,string2,string3....) 

найти все URL-адреса элементов image_url и smilie_text

Я пробовал много кода на stackoverflow, но, похоже, не нашел того, что мне нужно. Может кто-нибудь мне помочь?

Не PHP in array $smilie_text & $image_url = (string1,string2,string3....) , что вы имеете в виду под этим

RiggsFolly 27.09.2018 19:25

Я хочу, чтобы он выглядел так: $ image_url = (https: //, https: //, https: // ...) для моего xml

Jubei Yagyu 27.09.2018 19:27

всем извините, это мой первый пост

Jubei Yagyu 27.09.2018 19:33
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
3
50
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужно использовать класс DOMDocument для получения данных из xml. Используйте getElementsByTagName() для выбора элементов по имени тега, затем прокрутите результат dom и получите текст выбранных элементов.

$doc = new DOMDocument();
$doc->loadXML($xml);
$nodes = $doc->getElementsByTagName("image_url");

$image_url = [];
foreach($nodes as $node)
    $image_url[] = $node->nodeValue;

Проверить результат в демонстрация

Другие вопросы по теме