Use of undefined constant __DIR__

20th Октябрь 2011 | Категории: PHP | Метки:

При использовании одной библиотеки на экране возникло предупреждение:

A PHP Error was encountered
Severity: Notice
Message: Use of undefined constant __DIR__ - assumed '__DIR__'
Filename: helpers/tracer_helper.php
Line Number: 68

И соответственно, дальнейший код был некорректен.
Что же это за константа __DIR__?

__DIR__ — это константа, возвращающая директорию текущего файла. Это эквивалентно вызову dirname(__FILE__). Возвращаемое имя директории не оканчивается на слэш, за исключением корневой директории (константа добавлена в PHP 5.3.0.).

Для совместимости с версиями до 5.3.0 можно использовать следующую строчку:

<?php if ( !defined('__DIR__') ) define('__DIR__', dirname(__FILE__));?>

Subscribe without commenting


  1. Олег
    10th Ноябрь 2011 в 05:32

    Лучше не использовать такой код. Лучше просто заменять все вхождения __DIR__ на dirname(__FILE__). Для каждого файла должен отличаться __DIR__ а в данной реализации __DIR__ определится в первом же исполняемом файле и останется таким.