Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Utworzenie tablicy dwuelementowej z xml'a
kermi
post 5.08.2014, 17:26:05
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.10.2007

Ostrzeżenie: (0%)
-----


Witam, korzystam na stronie z phpgallery i mam plik xml w takim formacie:
CODE
<tiltviewergallery>
<photos>
<photo imageurl="imgs/zdjecie1.JPG">
<title>towar1</title>
</photo>
<photo imageurl="imgs/zdjecie2.JPG">
<title>towar2</title>
</photo>
</photos>
</tiltviewergallery>


Chcę zrobić wersję uproszczoną dla urządzeń mobilnych. Ponieważ bez sensu byłoby tworzenie nowego pliku do galerii, chcę wykorzystać powstały plik xml, ale potrzebuję wyciągnąć z niego do dwuwymiarowej tablicy:

1. Nazwę pliku ze zdjęciem czyli: <photo imageurl="imgs/zdjecie1.JPG">
2. Opis czyli <title>towar1</title>


O ile nie mam problemu z dostępem do imageurl, to ni diabła nie wiem jak dostać się do opisu
Robię to mniej więcej tak:

CODE
<?php
$towary = simplexml_load_file("gallery.xml");
$obrazek=$towary->xpath('photos/photo');
foreach ($obrazek as $key)
{
var_dump($key);
};

?>


i mam taki efekt:

CODE
array(2) { [0]=> object(SimpleXMLElement)#2 (2) { ["@attributes"]=> array(1) { ["imageurl"]=> string(18) "imgs/zdjecie1.JPG" } ["title"]=> string(9) "towar1" } [1]=> object(SimpleXMLElement)#3 (2) { ["@attributes"]=> array(1) { ["imageurl"]=> string(14) "imgs/zdjecie2.JPG" } ["title"]=> string(5) "towar2" } }
object(SimpleXMLElement)#2 (2) { ["@attributes"]=> array(1) { ["imageurl"]=> string(18) "imgs/zdjecie1.JPG" } ["title"]=> string(9) "towar1" } object(SimpleXMLElement)#3 (2) { ["@attributes"]=> array(1) { ["imageurl"]=> string(14) "imgs/zdjecie2.JPG" } ["title"]=> string(5) "towar2" }



Jeśli zastosuję xpath('photos/photo/title') to mam null

Proszę o pomoc i wyrozumiałość, gdyż do tej chwili technologie xml nie były mi potrzebne, dziękuję z góry za podpowiedzi.
Go to the top of the page
+Quote Post
trueblue
post 5.08.2014, 18:32:49
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


  1. $towary = simplexml_load_file("aaa.xml");
  2. $obrazek=$towary->xpath('photos/photo');
  3. foreach ($obrazek as $photo)
  4. {
  5. echo $photo->title;
  6. echo $photo->attributes()[0];
  7. };


--------------------
Go to the top of the page
+Quote Post
kermi
post 5.08.2014, 19:48:39
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 24.10.2007

Ostrzeżenie: (0%)
-----


Dziękuję, bardzo mi to pomogło....
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 20:51