Я пытаюсь использовать SimpleXML для анализа XML-файла, созданного на экспорт Google Reader.Анализ экспорта Google Reader
пример файла:
<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.0">
<head>
<title>TheTechBox subscriptions in Google Reader</title>
</head>
<body>
<outline text="Engadget RSS Feed" title="Engadget RSS Feed"
type="rss" xmlUrl="http://www.engadget.com/rss.xml" htmlUrl="http://www.engadget.com"/>
<outline text="xkcd.com" title="xkcd.com" type="rss"
xmlUrl="http://xkcd.com/rss.xml" htmlUrl="http://xkcd.com/"/>
</body>
</opml>
Это то, что я пытался до сих пор, пользователь загружает файл в эту форму и форму необходимо перебрать и извлечения данных.
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
$import = new SimpleXMLElement($_FILES["file"]["name"]);
foreach($import->opml->body->outline[0] as $feed){
echo $feed["title"];
}
}
?>
Сейчас хром выдает ошибку сервера, который указывает на то, очень неправильно на странице, файл загрузки ОК, так что, как представляется, SimpleXml часть.
Я планирую сделать что-то более сложное с данными позже, в настоящее время я пытаюсь получить его только для эхо-данных на странице (для демонстрационных целей).
Любая обратная связь будет принята с благодарностью.
Вот рабочий код в конце
$import = simplexml_load_file($_FILES["file"]["tmp_name"]);
foreach($import->body->outline as $feed){
echo $feed["title"];
}
Это нужно для добавления разобрать все данные, но это работает.
Какая ошибка возникает у вас? 500 человек? И попытались ли вы вывести содержимое '$ _FILES [" file "] [" name "]', чтобы убедиться, что оно действительно? –
'simplexml_load_file ($ _ FILES [" file "] [" tmp_name "]);' – Wrikken
@TomWalters Да, это ошибка 500, и да, файл должен быть действительным, поскольку я попытался просто отбросить основные данные файла на страницу раньше, и это работал. –