9 Php функции, които трябва да знаете всичко

Без значение колко ние не използваме PHP, все още се появяват някои от функциите, които дори не сме чували. Някои от тях щеше да бъде много полезно за нас. Аз създадох кратък списък с полезни функции, които трябва да бъдат в арсенала на всеки PHP програмист.

1. Създаване на функции с променлив брой аргументи

Шансовете са, вие вече знаете, че PHP позволява да създавате функции с допълнителни аргументи. Сега ще покажем на функцията, в която броят на аргументите може да варира при различните случаи.

Но да започнем с това, нека да си спомним как сме се създаде функция по обичайния начин:

Сега нека да разгледаме как можете да напишете функция с неограничен брой аргументи. За да направите това е да се използват func_get_args () метод:

2. Използвайте Глоб () за търсене на файлове

имена на функции често говорят за себе си. Това не може да се каже и за (функцията за глоби).

Без да навлизаме в подробности, неговата функционалност е подобен на метод scandir (). Тя ви позволява да намерите желания файл от шаблон:

За да намерите няколко вида файлове трябва да бъдат написани, както следва:

Можете също да укажете пътя към шаблона:

За да получите пълния път до метода на документ, използване realpath ():

3. Информация за използваната памет

Ако следите количеството памет, която е вложена в дейността на скриптовете си, най-вероятно, ще бъдат по-склонни да ги оптимизира.

В PHP, там е мощен инструмент за проследяване на използването на паметта. В различни части на сценария натоварване може да е различна. За да се получи стойността на използваната памет в момента, трябва да използваме метод memory_get_usage (). За да се определи максималния брой използвана памет употреба memory_get_peak_usage ()

4. Processor Информация

За да направите това, използвайте getrusage метод (). Но имайте предвид, че на Windows тази функция няма да работи.

Картината е посочено по-горе, ще стане ясно на тези, които имат опит в администриране на системата. За всички останали оферта препис:

  • ru_oublock: брой на действия блокиране на запис
  • ru_inblock: броят на блок прочитания
  • ru_msgsnd: броят на съобщенията, изпратени
  • ru_msgrcv: броят на получените съобщения
  • ru_maxrss: максималният размер на набор извън виртуалната памет комплект
  • ru_ixrss: общият размер на общата памет
  • ru_idrss: общата сума на неразделими данни
  • ru_minflt: брой на използваните страници на паметта
  • ru_majflt: броя на страниците, няма грешки
  • ru_nsignals: броят на получените сигнали
  • ru_nvcsw: броят на контекст превключва процес
  • ru_nivcsw: броят на принудително контекст превключва
  • ru_nswap: броят на обажданията на диска, когато вика
  • ru_utime.tv_usec: Докато работи в режим на потребител (микросекунди)
  • ru_utime.tv_sec: по време на работа в режим на потребител (секунди)
  • ru_stime.tv_usec: Докато работи в привилегирован режим (микросекунди)
  • ru_stime.tv_sec: по време на работа в привилегирован режим (секунди)

За да разберете какви ресурси на процесора с помощта на скрипт, трябва да ценим "Време за потребител" (работата в режим на потребител) и "времето система" на (по време на работа в привилегирована режим). Можете да получите резултати в секунди и микросекунди. За да се направи от общия брой на секунди в десетично число, което трябва да се раздели на стойността на микросекунди до 1 милион и да се добави към стойността на секунди.

Объркани някак. Ето един пример:

Въпреки, че сценария отне около 3 секунди, процесорът не е силно натоварен. Факт е, че когато ти се обадя (сън) скрипт почти не консумират ресурси на процесора. Като цяло, има много задачи, които вземат доста време, но тя не използва процесора. Така например, в очакване на операции, свързани с диска. Така че не се използва винаги процесора във вашите скриптове.

Работната сценария отне 1.4 секунди от времето на процесора. В този случай, по време на системни функции като цяло ниска.

Часа в привилегирован режим (System Time) - времето, което прекарва на процесора, изпълняващи системни функции на ядрото от името на програмата. например:

Сега системата време струва много повече, отколкото в предишния пример. метод All благодарение microtime (), която използва системните ресурси.

Все пак трябва да се отбележи, че времето за възпроизвеждане не може да бъде точна, защото По това време се използват ресурсите на процесора и други програми, които са резултат може да даде една малка грешка.

5. Магически константи

В PHP, има много магически константи, като например номера на текущия ред (__LINE__), пътя на файла (__FILE__), директория пътя (__DIR__), името на функцията (__FUNCTION__), име на клас (__CLASS__), име на метод (__METHOD__) и Пространствата от имена (__NAMESPACE__).

Всичко, от което няма да се разгледа. Да видим само за няколко:

Използвайте __LINE__ когато отстраняване на грешки скриптове:

6. Създаване на уникален идентификатор

Има моменти, когато трябва да се генерира уникален низ. Много пъти съм виждал, че използването на md5 () функция, за да изпълни тази задача:

Но в действителност, за тази цел в PHP има специална функция uniqid ()

Невъоръжено око може да се види, че първите знаци да се каже най-малко подобни ... Това се случва, се дължи на факта, че този метод използва времето на сървъра за генериране характер. Това е още по-полезна, защото всички генерирани стойности са получени по азбучен ред, което прави възможно да ги сортирате бързо.

С цел намаляване на шансовете за получаване на дубликат, ние можем да добавите код или да използвате втория вариант (за увеличаване на броя на знака):

Този метод създава размера на низа е по-малко от md5, като по този начин можете да спестите място.

7. сериализирането

Били ли сте някога трябваше да се съхранява комплекс данни в база данни или в досието? С цел да се превърне в низ в PHP има специална функция.

Ето как тези функции работят. Въпреки това, поради бързия растеж на популярността на JSON, в PHP 5.2 2 метод json_encode () и json_decode () бяха добавени. Тяхната работа е подобен на Сериализирането ():

8. компресия линии

Код ние не говорим за компресия, ума веднага да архивирате файлове в ZIP формат. PHP предоставя възможност за компресиране на дълги низове без никакви файлове.

Следният пример ще покаже gzcompress операцията () и gzuncompress ():

Ние сме в състояние да се намали размера на текста до 50%. За същата цел може да се използва gzencode () и gzdecode (), който използва различен алгоритъм за компресиране.

9. Run преди завършване

В PHP има register_shutdown_function функция (). което ще ви позволи да изпълни част от кода, преди завършването на сценария.

Да речем, че искате да разберете някои информационни ... Часове скрипт:

На пръв поглед това може да изглежда тривиална задача. За тези цели, можете да поставите кода в края на файла. Въпреки това, ако преди тази работа някъде изход () функция, този код ще никога не работят. Както е добре, че няма да работи, ако има грешка в страницата или потребителят ще прекъсне страницата за изтегляне (като кликнете на съответния бутон в браузъра ви);

При използване на метод register_shutdown_function () изпълнява код в двата случая:

PHP е цяла планета, която никога не престава да ни удивлява вашето съдържание. Какво мислите за тези функции?

5 урока последната колона "PHP"

Когато става въпрос за сигурността на уеб сайт, фразата "Да се ​​филтрират всички, избяга всичко" винаги ще бъде от значение. Днес нека да поговорим за филтриране на данните.

  • Изразителен 2 поддържа връзка с други компоненти за специален режим на ZF. Не всеки харесва решението. В тази статия ще обсъдим как да се подобри процесът на свързване на няколко модула.

  • Да предположим, че трябва да изпратите информация за Google Анализ от страна на сървъра скрипт. Как да го направя. Отговорът в тази статия.

  • Селекция от няколко вида PHP пясък. На някои ви в онлайн режим ще бъде в състояние да тествате вашия код, но има и решения, които могат да бъдат приложени в сайта си.

  • 9 Php функции, които трябва да знаете всичко

    До получаване на информация от два канала (зрение и слух) на ефективността на обучението далеч по-добър живот от книги. А домашните задачи и онлайн тестове ще ви позволи да мисля постоянно в целевия език и веднага провери знанията си!

    9 Php функции, които трябва да знаете всичко

    9 Php функции, които трябва да знаете всичко

    Ако искате по-дълго време, за да проучи как да се HTML, че ме има, за което трябва добра новина!

    9 Php функции, които трябва да знаете всичко

    Ако вече сте се научили HTML и искат да се движи напред, следващата стъпка ще бъде да се проучи CSS технологията.

    9 Php функции, които трябва да знаете всичко

    Ако искате да се разбере концепцията на домейн и хостинг, да научат как да се създаде база данни, да качвате файлове към уеб сайт чрез FTP сървър, създаване на поддомейни, да конфигурирате пощенските кутии за сайта и мониторинг на посещаемостта, този курс е разработен специално за вас!