Семантика развития языков программирования и техните области на приложение бързо заеха правилните позиции. Разбира се, математическите изчисления на траекториите на планетите и движението на валутните курсове на пазарите все още вълнуват обществото, но дори и там струните от символи заемат достойно място.
Съществен момент: от строгото въвеждане на променливи до абсолютно безплатната им употреба и автоматично преобразуване на типа пътят беше много по-дълъг, колкото е необходимо.
Човек може да спори с това, но няма много смисъл, но впрограмиране - още повече. Семантиката на взривен PHP значително опрости работата на програмиста: тя прехвърли използването на няколко функции и конструкции в едно цяло.
При этом синтаксис и семантика самого PHP в Що се отнася до тази функция, тя дава възможност на разработчика да измисли своя собствена семантика благодарение на тази конкретна функция, въпреки че има прилична работа за други низови функции.
Нищо не е по-просто: експлодира PHP просто разделя една линия на местата, където друга линия се появява в нея. Това обикновено е един знак:
Но можете да прекъснете линията за каквото и да е, а вторият ред (разделител) може да има смисъл на целия маркер, елемент на етикет или да носи каквато и да е стойност във въображението на програмиста.
Числата са склонни да участват в математически операции, а струните участват в малки букви. Идеята е правилна и интересна, но стара и безполезна.
Днес променлива може да промени типа на път отедин оператор на друг и във всяка синтактична конструкция всички променливи, които участват в него, са от типа, който определя синтаксиса на тази конструкция.
Така че, ако число попадне в малка конструкция,тя се превръща в низ и ако низ участва в математическа операция, тогава цялото му начало преди първото възникване на недигитален символ ще се интерпретира като число.
В този код експлодирането в PHP демонстрира как можете лесно да отделите целочислената част от дробната част за произволен брой цифри. Резултатът от изпълнението на горния код е представен по-долу.
Съмнително е, че такъв смисъл е вложен в тази функция от създателите на езика. Но има много възможности за такова приложение за тази функция.
Трябва да се има предвид, че разделителят (линията, по която се случва прекъсването) изчезва, тоест след като разделителната линия се раздели, PHP извлича всички намерени от нея разделители.
В горния пример низът от числа се разделя чрез експлодира PHP чрез запетая и се създава масив. Обратната функция implode PHP може да обедини този масив в един ред, например, чрез точка.
В първия случай низът не се променя, във втория случай масивът също остава. С други думи, използвайки низове, можете да разделите в една основа и да се присъедините към друга.
Като първо приближение може да се направи напримерзамяна на малки букви с главни. Подобна задача за експлодиране / имплодиране вероятно няма да е много интересна, но важният момент е, че дялът може да бъде всичко! Как да се свържете също е всяка опция.
Обектно ориентирано програмиране днеснавсякъде и всяка програма се състои от обекти. Естествено, PHP експлодира описанието никога не споменавани обекти, но нищо не ви пречи да създадете идеята за директна връзка между низове и обекти.
В този контекст обектът може да бъде представенниз от символи, поставяйки го в базата данни или предавайки го по комуникационни канали. Можете да организирате обмена на информация между обектите не чрез обемисти масиви, а чрез низове на параметри.
Подателят свързва необходимите данни в едно цяло (низ), а приемникът, използвайки експлодиращ PHP, го възстановява, тоест извлича необходимите последователности от знаци.
Ако развием тази идея в момента, когато обектът е създаден, тогава обикновено е необходимо „ръчно“ или от базата данни да я попълним с необходимите данни.
Използвайки explode, можете да автоматизирате процесасъздаване на екземпляри на обект и притежаване на абстрактен обект, можете да контролирате неговия тип чрез предаване на различни символни низове за инициализация. Този подход намалява броя на различните обекти и ги прави по-лесни за манипулиране.