Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%)
|
Jest sporo problemów z analizą XHTML w PHP przez funkcje XML. Kilka już rozwiązałem, stosując różne tricki i obejścia. Jednak jest kolejny - jak pobrać wartość atrybutu z przestrzenią nazw? Wprawdzie można zrezygnować z namespace, lecz lepiej zaznaczyć w kodzie XHTML, że znacznik lub atrybut należy do dziedziny F3.
Niestety, nie działa. Nawet $f3->item['var']. A może zastosowanie funkcji preg_* i str_* lepiej nadaje się do analizy kodu XHTML? Właściwie operacje na XML-u wykonuję tylko po to, aby odczytać wartości paru atrybutów, np. f3:var, z tym że: - jeśli znajdzie się w <form>, trzeba przejechać wszystkie pola: checkbox, radio i select i odczytać ich nazwy - gdy znajdzie się w tych polach - dotyczy tylko tych pól Trzeba potem jeszcze wstawić instrukcję warunkową. Za pomocą SimpleXML tylko pobieram kod pola do zamiany przez str_replace(), bo w XML-u tego raczej nie zrobię. Przykładowy wynik: Kod <input type="checkbox" id="something" <?php if($config['item']) echo 'checked="checked" ';?>/> LUB: <?php if($config['item']) echo '<input type="checkbox" id="something" checked="checked" />'; else echo '<input type="checkbox" id="something" />'; ?> Właściwie zaletą parsera XML jest to, że wyrzuci błąd, gdy jakiś znacznik jest niezamknięty, lecz uruchamiam go dopiero wtedy, gdy znajduje się w szablonie choć 1 znacznik <form>. Może nie ma to nawet sensu? Ten post edytował WebCM 25.04.2008, 16:44:16 |
|
|
|
WebCM [PHP] Odczyt atrybutu z przestrzenią nazw 25.04.2008, 16:43:25
Strzałek Cytat(WebCM @ 25.04.2008, 17:43:25 ) ... 26.04.2008, 18:57:24
dr_bonzo [PHP] pobierz, plaintext <?php$str= '<root x... 26.04.2008, 22:05:33 ![]() ![]() |
|
Aktualny czas: 22.12.2025 - 16:51 |