|
В този урок ще получите основните знания за това как може да се генерира XML на всеки web сървър, който поддържа PHP, без използване на каквито и да е разширения за работа с XML. В някои случаи генерирането на XML файлове само с PHP може да се окаже по-бързо и лесно отколкото това с използване на XML библиотеки.
В този пример ще генерираме XML файл в следния формат: CODE
Escape символи! XML файловете нормално започват с следващата линия: CODE
Забелязахте ли? – таговете "<?" и "?>" съвпадат с тези в PHP. Непременно трябва да поставим escape символа "\" (backslash) пред всички съвпадащи със синтаксиса на PHP символи за да избегнем объркването, което би се получило когато PHP процесора срещне например "<?" в константно зададения стринг. Имена на файловете. Ако имате намерение да генерирате голямо количество файлове, можете да използвате генерирани на случаен принцип имена Грнериране на името и създаване на файла: CODE
Използвахме вградените функции rand() и MD5() за да получим случайно име на файла. В примера не е включена проверка дали генерираното име вече не съществува, но е добре да се включи, въпреки малката вероятност от повторение. Сега може да преминем към същността. Предефинирани символи. За да направим нашия файл форматиран и удобен за четене от човек, трябва да го форматираме. Ще са ни необходими следните предефифинирани символи:
Ето и първия ред с необходимите escape символи: CODE
Ето как ще изглежда този ред във файла: CODE
Сега да добавим и самото тяло на XML файла: CODE
Всъщност това е форматът на XML файла, който се използва от Flash Media online Player. Както виждате използвахме "\t" за табулация и "\r\n" за преминаване на нов ред. Тези символи се интерпретират автоматично от PHP и във стринга $xmlfile ще бъдат заменени с техните ASCII кодове. Не така стои въпроса обаче със "\<", "\?" и "\>". Преди записа трябва да премахнем "\" от стринга за тези символи: CODE
Записваме и затваряме файла: CODE
Приключихме! Ето и пълен вариянт скрипта: CODE
За да заработи реално скрипта, заменете жълтите подчертани части от кода с правилните за вас и вашия сървър и се обърнете към скрипта с браузър, като подадете параметър "?url=адрес_на_видеото". Ако използвате Windows сървър не забравяйте, че той прави разлика между бинарни и текстови файлове. Добавете "w" в параметъра за режима на отваряне на файла. Тъй като нашия файл е форматиран предварително в паметта, той трябва да се третира просто като поредица от байтове: CODE
Това е всичко. Да обобщим: Създадохме форматиран XML файл и го записахме на сървъра, без да използваме специални библиотеки за за работа с XML. Източник: pznetworks.com
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||









