dir_constant.rst 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. =====================
  2. Rule ``dir_constant``
  3. =====================
  4. Replaces ``dirname(__FILE__)`` expression with equivalent ``__DIR__`` constant.
  5. Warning
  6. -------
  7. Using this rule is risky
  8. ~~~~~~~~~~~~~~~~~~~~~~~~
  9. Risky when the function ``dirname`` is overridden.
  10. Examples
  11. --------
  12. Example #1
  13. ~~~~~~~~~~
  14. .. code-block:: diff
  15. --- Original
  16. +++ New
  17. <?php
  18. -$a = dirname(__FILE__);
  19. +$a = __DIR__;
  20. Rule sets
  21. ---------
  22. The rule is part of the following rule sets:
  23. - `@PhpCsFixer:risky <./../../ruleSets/PhpCsFixerRisky.rst>`_
  24. - `@Symfony:risky <./../../ruleSets/SymfonyRisky.rst>`_
  25. References
  26. ----------
  27. - Fixer class: `PhpCsFixer\\Fixer\\LanguageConstruct\\DirConstantFixer <./../../../src/Fixer/LanguageConstruct/DirConstantFixer.php>`_
  28. - Test class: `PhpCsFixer\\Tests\\Fixer\\LanguageConstruct\\DirConstantFixerTest <./../../../tests/Fixer/LanguageConstruct/DirConstantFixerTest.php>`_
  29. The test class defines officially supported behaviour. Each test case is a part of our backward compatibility promise.