Блог веб разработки

Блог веб-разработки статьи | видеообзоры | исходный код

Волшебные Константы php

Доброго времени суток. В данной статье мы рассмотрим встроенные константы php и научимся с ними работать.

Начнем с самой используемой константы __DIR__

echo __DIR__;

Эта константа выводим полный путь до директории в которой расположен данный файл в котором мы к ней обратились.

Как видите для вызова встроенных(волшебных) констант используется знаки нижнего подчеркивания - __Название волшебной константы__.

Мы также можем получить полный путь до текущего файла

echo __FILE__;

используя константу __FILE__.

С помощью константы __LINE__

echo __LINE__;

мы получим номер строки файла в которой была вызвана данная константа. Это удобно использовать при отладке когда мы работаем с большими кусочками кода. Пример:

echo 'Функция myFunction: '.((int)__LINE__+1).' строка';
function myFunction(){
    echo __FUNCTION__;
}
myFunction();

c помощью константы __FUNCTION__ мы получаем название функции в которой мы обратились к данной константе. Причем если у нас в данном документе используется пространство имен. То вернется:

название пространcтво имен \ название функции

Кто не знает что такое пространство имен в php переходите для ознакомления по этой ссылке

Пространство имен в php

Едем дальше. Для определения имени вызываемого класса мы можем воспользоваться константой __CLASS__

class myClass{
    public function __construct()
    {
        echo __CLASS__;
    }

}

$myClass = new myClass();

здесь мы получим имя класса.

Мы также можем получить название используемого метода класса и даже трейта:

class myClass{

    public function myMethod(){
         echo __METHOD__;
    }
    

}
$myClass = new myClass();

заметьте что при получении названия метода через константу __METHOD__ мы автоматически получаем название его класса.

Для получении названия метода трейта нам нужно воспользоваться константой __TRAIT__

trait myTrait{
    function myMethodTrait(){
        echo __TRAIT__;
    }
}
class myClass{
    use myTrait;

}
$myClass = new myClass();
$myClass->myMethodTrait();

Заметьте что название класса мы уже не получаем так как метод трейта ему не принадлежит.

Что такое трейты и как с ними работать вы можете узнать в данной статье

Трейты в php

И напоследок рассмотрим константу __NAMESPACE__

namespace myNamespace;

echo __NAMESPACE__;

С помощью нее вы можете узнать название пространства имен используемое в данном контексте документа.

На этом дорогие друзья данная статья подошла к концу.

Желаю вам успехов и удачи! Пока!

Оцените статью

Еще статьи

PHP буфер

CSS шрифты

CSS перенос слов

Слияние веток GIT

tkinter создание окна

Аргументы функций php

meter html

wget python

Типы параметров функций и методов в php7

Комментарии

Проверочный код

SonyaPelt

Перефразируйте пожалуйста свое сообщение --- По моему мнению Вы не правы. Предлагаю это обсудить. Пишите мне в PM, поговорим. скачать фифа, скачать фифа а также <a href=http://15fifa.ru/skachat-kljuchi-fifa-15/33-skachat-fifa-15-crack-kryak-tabletka-klyuch-besplatno.html>fifa 15 cracked by glowstorm</a> скачать фифа

17:52 03-06-2019

История

    ПОДПИСКА

    • Подпишись и получай информацию о выходе новых статей на почту! Просто введите свою почту, нажмите кнопку подписаться. На почту должно будет прийти сообщение с потверждением подписки. Если сообщение не пришло проверьте раздел спам или попробуйте другую почту. Также по всем техническим проблемам вы можете написать в поддержку

    НОВОСТИ

    • Всем привет! Запустил новый сервис для поиска и бесплатного скачивания, прослушивания аудиокниг. Здесь вы можете найти множество литературы и прослушать ее. Вскоре возобновлю написание статей.