|
автор: User BT (09.06.2006 в 10:51) |
|
| Здравствуйте, подскажите, как получить данный из http://kovcheg.apeha.ru/inform/lavka.xml ?
(пример: http://kovcheg.apeha.ru/inform/lavka.xml )
Формат данных:
lavka.xml
<root>
<items>
<item cnt="696" name="Щит учебный" price="4.32"/>
<item cnt="Много" name="Щит не учебный" price="4.32"/>
<item cnt="<количество>" name="<наименование товара>" price="<цена>"/>
</items>
</root> | |
|
|
|
|
|
|
|
для: User BT
(09.06.2006 в 10:51)
| | Можно воспользоваться регулярными выражениями
<?php
$content = file_get_contents("http://kovcheg.apeha.ru/inform/lavka.xml");
$pattern = "#<item[\s]+cnt=\"([^\"]+)\"[\s]+name=\"([^\"]+)\"[\s]+price=\"([^\"]+)\"#isU";
preg_match_all($pattern, $content, $out);
unset($out[0]);
echo "<pre>";
print_r($out);
echo "</pre>";
?>
|
| |
|
|
|
|
автор: User BT (09.06.2006 в 13:23) |
|
|
для: cheops
(09.06.2006 в 12:32)
| | Спасибо, а как теперь по ячейкам всё разбить?) | |
|
|
|
|
автор: User BT (09.06.2006 в 14:54) |
|
|
для: User BT
(09.06.2006 в 13:23)
| | Можно как-нибудь строки разбить на три переменных?
Например
<item cnt="Много" name="Щит не учебный" price="4.32"/>
$cnt[0]=Много $name[0]=Щит не учебный $price[0]=4.32
<item cnt="145" name="кольцо злости" price="8.55"/>
$cnt[55]=Много $name[55]=Щит не учебный $price[55]=4.32
что-нибудь типа такого можно сделать? | |
|
|
|
|
автор: User BT (09.06.2006 в 14:56) |
|
|
для: User BT
(09.06.2006 в 14:54)
| | опечатка
<item cnt="145" name="кольцо злости" price="8.55"/>
$cnt[55]=145 $name[55]=кольцо злости $price[55]=8.55 | |
|
|
|
|
|
|
|
для: User BT
(09.06.2006 в 13:23)
| |
Всмысле вывести ввиде таблички?
<?php
$content = file_get_contents("http://kovcheg.apeha.ru/inform/lavka.xml");
$pattern = "#<item[\s]+cnt=\"([^\"]+)\"[\s]+name=\"([^\"]+)\"[\s]+price=\"([^\"]+)\"#isU";
preg_match_all($pattern, $content, $out);
echo "<table width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\">
<tr>
<td><b>наименование товара</b></td>
<td><b>количество</b></td>
<td><b>цена</b></td>
</tr>";
for ($i=0; $i< count($out[0]); $i++){
echo "<tr>
<td>".$out[2][$i]."</td>
<td>".$out[1][$i]."</td>
<td>".$out[3][$i]."</td>
</tr>
";
}
?>
|
| |
|
|
|
|
автор: User BT (09.06.2006 в 16:44) |
|
|
для: xexe
(09.06.2006 в 16:09)
| | Спасибо! | |
|
|
|