Помогите начинающему ! :
Мне нужно пропарсить(кажется так) xml строку : данная строка это ответ на запрост от т.н. Web сервиса. (ну это наверное не столь важно). Короче ответ проходит в виде xml строки на страницу : "http://localhost/listdoc.php" В этой строке есть теги(всякие там ) Ну и нужно значение одного тега (name) присвоить переменной php. Работает способ
"$xml = simplexml_load_file('*.xml');
$name = $xml->name;
echo $name; "
Но беда в том что у меня далеко не *.xml и я не знаю как перевести эту строку в xml файл
Знаю есть еще способ simplexml_load_string но не умею воспользоваться в данном случае.
Подскажите пожалуйста как можно данное значение выцыпить?
Спустя 4 минуты, 33 секунды (15.07.2011 - 10:32) bulgakov написал(а):
Цитата |
Но беда в том что у меня далеко не *.xml |
Что это значит? Подробнее, что тогда за строка у вас? Html, plan text что? Или гадать прикажете? Покажите формат строки и тогда уже будем думать как из нее выдрать нужное значение.
Спустя 3 минуты, 42 секунды (15.07.2011 - 10:36) pavel24071988 написал(а):
http://localhost/listdoc.php - это страница с ответом от сервиса
60/41 08.07.11 12842 0 207336 36 2011-07-15 00:00:0012842Оформлен375922010822749206689984015.44683521Селютин В.Д. ИП - это сам ответ (текст на странице)
<?xml version="1.0" encoding="UTF-16LE" standalone="no"?>
<listDoc><row><id_doc>60/41 08.07.11 12842 0 207336 36 </id_doc><date_doc>2011-07-15 00:00:00</date_doc><nom_doc>12842</nom_doc><status>Оформлен</status><id_tran s></id_trans><summa>375922010822749206689984015.4468352</summa><deficit>1</deficit><commentary></commentary><supp lier>Селютин В.Д. ИП
- а это код страницы (только там всё в строчку)
60/41 08.07.11 12842 0 207336 36 2011-07-15 00:00:0012842Оформлен375922010822749206689984015.44683521Селютин В.Д. ИП - это сам ответ (текст на странице)
<?xml version="1.0" encoding="UTF-16LE" standalone="no"?>
<listDoc><row><id_doc>60/41 08.07.11 12842 0 207336 36 </id_doc><date_doc>2011-07-15 00:00:00</date_doc><nom_doc>12842</nom_doc><status>Оформлен</status><id_tran s></id_trans><summa>375922010822749206689984015.4468352</summa><deficit>1</deficit><commentary></commentary><supp lier>Селютин В.Д. ИП
- а это код страницы (только там всё в строчку)
Спустя 14 секунд (15.07.2011 - 10:36) bulgakov написал(а):
Может вам тогда нужно загружать не xml файл а строку вида xml? Тогда можно например так:
Наверное так, проверьте.
$xml = 'Some xml string';
$result = new SimpleXMLElement($xml);
$name = $result->name;
Наверное так, проверьте.
Спустя 3 минуты, 6 секунд (15.07.2011 - 10:39) pavel24071988 написал(а):
Спасибо большое. С переменной понятно.
А как сделать то так чтобы текст со страницы.php засунуть в "some xml string" - не делая это каждый раз руками?
А как сделать то так чтобы текст со страницы.php засунуть в "some xml string" - не делая это каждый раз руками?
Спустя 1 минута, 4 секунды (15.07.2011 - 10:40) bulgakov написал(а):
Ну каким образом вы принимаете эту строку?
Спустя 3 минуты, 44 секунды (15.07.2011 - 10:44) pavel24071988 написал(а):
вот код
<?php
$client = new SoapClient(Null, array('location' => "http://192.168.1.40:8080/ws_eorder/services/pk_wseorder_ws_framework", 'uri'=> "http://ws_eorder/" ));
$as_Return = $client->rc_userlogin('<?xml version="1.0" encoding="UTF-16LE" standalone="no" ?> <UserLogin> <row> <username>'.$_POST['login'].'</username> <userpass>'.$_POST['password'].'</userpass> <id_kontr /> <n_kontr /> <category /> </row> </UserLogin>');
?>
Спустя 1 минута, 12 секунд pavel24071988 написал(а):
ну и забыл
echo $as_Return;
<?php
$client = new SoapClient(Null, array('location' => "http://192.168.1.40:8080/ws_eorder/services/pk_wseorder_ws_framework", 'uri'=> "http://ws_eorder/" ));
$as_Return = $client->rc_userlogin('<?xml version="1.0" encoding="UTF-16LE" standalone="no" ?> <UserLogin> <row> <username>'.$_POST['login'].'</username> <userpass>'.$_POST['password'].'</userpass> <id_kontr /> <n_kontr /> <category /> </row> </UserLogin>');
?>
Спустя 1 минута, 12 секунд pavel24071988 написал(а):
ну и забыл
echo $as_Return;
Спустя 3 минуты, 40 секунд (15.07.2011 - 10:48) bulgakov написал(а):
Ну наверное и надо использовать этот $as_Return вместо "some xml string"
Спустя 46 секунд (15.07.2011 - 10:49) pavel24071988 написал(а):
Спасибочки.
Сейчас попробую
Спустя 13 минут, 25 секунд pavel24071988 написал(а):
Ругается на строчку
$result = new SimpleXMLElement($as_Return);
???????????????
Спустя 18 минут, 11 секунд pavel24071988 написал(а):
пишет
Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 1: parser error : Blank needed here in C:\Site\localhost\www\userlogin.php on line 17
Как этоможно исправить?
Ошибка в синтаксисе?
Сейчас попробую
Спустя 13 минут, 25 секунд pavel24071988 написал(а):
Ругается на строчку
$result = new SimpleXMLElement($as_Return);
???????????????
Спустя 18 минут, 11 секунд pavel24071988 написал(а):
пишет
Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 1: parser error : Blank needed here in C:\Site\localhost\www\userlogin.php on line 17
Как этоможно исправить?
Ошибка в синтаксисе?
Спустя 32 минуты, 40 секунд (15.07.2011 - 11:21) bulgakov написал(а):
Видимо в as_Return не xml...