Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Parsowanie dokumentu XML
.rh-
post 9.04.2006, 18:51:43
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 16.07.2005

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


Witam serdecznie
Mam pytanie czysto merytoryczne. Otoz, napisalem kod ktory ma zparsowac plik xml o podanej nizej budowie:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <conf>
  3.        <sec id="db.config">
  4.                <param id="dbName">db</param>
  5.                <param id="dbLogin">ppp</param>
  6.                <param id="dbPass">pppp</param>
  7.                <param id="dbHost">127.0.0.1</param>
  8.        </sec>
  9.        <sec id="pl.language.config">
  10.                <param id="100">Witam</param>
  11.                <param id="150">Wyslij emaila</param>
  12.                <param id="160">Jak sie masz</param>
  13.        </sec>
  14. </conf>


W kodzie php ktory jest odpowiedzialny za te czynnosci mam dwie tablice

  1. <?php
  2. public $allData = array();
  3. public $allD = array();
  4. ?>


W jednej przechowoje nazwe parametru ,a w innej wartosc tegoz parametru.

I teraz pytanie, czy robiac cos takiego:

  1. <?php
  2.  
  3.  public function getAllData() {
  4. // ** lacze dwie tabele... aby otrzymac jedna w postaci opcja->wartosc
  5. $this->allD=array_combine($this->allD,$this->allData);
  6. return print_r($this->allD);
  7. }
  8.  
  9. ?>


czy przypadkiem nie ide na okolo, czy to wogole ma rece i nogi? Wprawdzie otrzymuje zamierzony efekt, ale nie bardzo mnie to cieszy...

Pozdrawiam!
Go to the top of the page
+Quote Post
mariuszn3
post 9.04.2006, 21:44:13
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


Czy parsujesz ten plik korzystając z jednego z rozszerzen php.. czy napisałes swój kod do sczytania pliku i wyciągnięcia potrzebnych danych? Jesli to drugie, to idziesz na około.
Go to the top of the page
+Quote Post
.rh-
post 9.04.2006, 21:56:05
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 16.07.2005

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


Cytat(mariuszn3 @ 2006-04-09 20:44:13)
Czy parsujesz ten plik korzystając z jednego z rozszerzen php.. czy napisałes swój kod do sczytania pliku i wyciągnięcia potrzebnych danych? Jesli to drugie, to idziesz na około.

Zakladajac ze wybralem 2 rozwiazanie. Mozesz umotywowac dlaczego poszedl bym na okolo?

Pozdrawiam!
Go to the top of the page
+Quote Post
matid
post 10.04.2006, 12:54:43
Post #4





Grupa: Zarejestrowani
Postów: 362
Pomógł: 0
Dołączył: 18.02.2004
Skąd: Knurów

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


Cytat(.rh- @ 2006-04-09 21:56:05)
Zakladajac ze wybralem 2 rozwiazanie. Mozesz umotywowac dlaczego poszedl bym na okolo?

1. Po co pisać coś, co już zostało napisane?
2. Natywna obsługa plików XML jest szybsza, bo AFAIK napisana w C/C++.
Go to the top of the page
+Quote Post
.rh-
post 10.04.2006, 13:05:53
Post #5





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 16.07.2005

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


Cytat
1. Po co pisać coś, co już zostało napisane?

Szanuje ludzi ktorzy tak mysla ale ja definitywnie niezgadzam sie z takim podejsciem. A co jesli ktos chce praktykowac swoje umiejetnosci?. Hmm, najlepiej to wogole zrobic skrypt(program) ktory jest zlepkiem innych skryptow(programow).

BDW: W takim razie po co pisac skrypty, przeciez wszystko juz jest napisane..smile.gif? Tylko brac i uzywac(kopjowac) tongue.gif
Go to the top of the page
+Quote Post
mariuszn3
post 10.04.2006, 15:30:27
Post #6





Grupa: Zarejestrowani
Postów: 352
Pomógł: 0
Dołączył: 22.01.2006

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


Sam zaczynająć zabawę z dokumentami XML z rozpędu zacząłem od pisania własnej klasy, która to budowała drzewo DOM do tablicy. Było troszkę zabawy, bo musiałem do każdego rekordu tablicy dostawić odwołania do rodziców itd. Szczęsliwie nie za późno zacząłem czytać o gotowych obiektach stworzonych własnie do tego typu czynnosci. Wywaliłem cały swój kod i zastąpiłem go kodem opartym o php'owe obiekty DOM. Każda z metod mojej klasy skróciła się z 7-10 linijek do 1-2, o wydajnosci nie wspomnę jak jeszcze poduczyłem się o xpath to się za głowę złapałem - jak wiele można osiągnąć jak szybko i zaledwie w kilku linijkach kodu.

Tak naprawdę podchodzisz bardzo naiwnie i marnujesz swój czas. Ucząc się nowych dedykowanych narzędzi nawet nie wiesz jak bardzo dzięki nim będziesz mógł zwiększyć swoją wydajnosć.
To co ty robisz to tak jak pisanie funkcji strpos() substr() w php.
Może w ogóle przestan korzystać z funkcji php tylko napisz swoje na nowo ;-)
Albo napisz swoje php ;-)
Go to the top of the page
+Quote Post
.rh-
post 10.04.2006, 17:42:50
Post #7





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 16.07.2005

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


Cytat
Sam zaczynająć zabawę z dokumentami XML z rozpędu zacząłem od pisania własnej klasy...


Dzieki za informacje. Wieze ze Twoja sugestia plynie z Twoich wlasnych doswiadczen, dlatego przyjmuje je do swojej kolejki:) Najprawdopodobniej minie troche czasu zanim przyznam Ci racje;)

Cytat
To co ty robisz to tak jak pisanie funkcji strpos() substr() w php.

Pisalem, pisalem:-) lecz w cpp:-)


Cytat
Może w ogóle przestan korzystać z funkcji php tylko napisz swoje na nowo ;-)
ciekawe:) przemysle...

Cytat
Albo napisz swoje php ;-)

w chwili obecnej nie widze takiej potrzeby;-)
Go to the top of the page
+Quote Post
pawel_k
post 10.04.2006, 22:23:36
Post #8





Grupa: Zarejestrowani
Postów: 211
Pomógł: 3
Dołączył: 29.07.2005
Skąd: Szczebrzeszyn

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


Cytat(.rh- @ 2006-04-10 16:42:50)
Najprawdopodobniej minie troche czasu zanim przyznam Ci racje;)

dobra rada, zrób to jak najszybciej, będziesz o wiele lepszym programistą... sam bylem uparty i pisalem swoje klasy, a to do obsługi bazy, a to do innych pierdół... nie ma sensu, marnujesz czas, szczególnie jak to ma być kolejna klasa do obsługi XML'a...
Go to the top of the page
+Quote Post
matipl
post 24.04.2006, 14:40:51
Post #9





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 6.05.2003
Skąd: Gdańsk

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


Cytat(.rh- @ 2006-04-10 14:05:53)
Cytat
1. Po co pisać coś, co już zostało napisane?

Szanuje ludzi ktorzy tak mysla ale ja definitywnie niezgadzam sie z takim podejsciem. A co jesli ktos chce praktykowac swoje umiejetnosci?. Hmm, najlepiej to wogole zrobic skrypt(program) ktory jest zlepkiem innych skryptow(programow).

BDW: W takim razie po co pisac skrypty, przeciez wszystko juz jest napisane..smile.gif? Tylko brac i uzywac(kopjowac) tongue.gif

tak właśnie jest w Javie, tylko odpowiedni import i po sprawie...


--------------------
Mateusz 'matipl' Kamiński
WWW - http://matipl.pl
Go to the top of the page
+Quote Post
em1X
post 10.05.2006, 09:40:14
Post #10





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

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


W php jest to samo, tylko, ze wszystko jest juz zaimportowane.
Cala sprawa składa się do nieznajomości bibliotek smile.gif ergo uczmy sie i uczmy, bo wiedza to potęga..


--------------------
eh, co polska wódka to polska wódka
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: 14.08.2025 - 11:09