doc/rules/language_construct/function_to_constant.rst
function_to_constantReplace core functions calls returning constants with the constants.
This rule is RISKY
Risky when any of the configured functions to replace are overridden.
This rule is CONFIGURABLE
You can configure this rule using the following option: functions.
functions
List of function names to fix.
Allowed values: a subset of ``['get_called_class', 'get_class', 'get_class_this', 'php_sapi_name', 'phpversion', 'pi']``
Default value: ``['get_called_class', 'get_class', 'get_class_this', 'php_sapi_name', 'phpversion', 'pi']``
Examples
--------
Example #1
~~~~~~~~~~
*Default* configuration.
.. code-block:: diff
--- Original
+++ New
<?php
-echo phpversion();
-echo pi();
-echo php_sapi_name();
+echo PHP_VERSION;
+echo M_PI;
+echo PHP_SAPI;
class Foo
{
public function Bar()
{
- echo get_class();
- echo get_called_class();
+ echo self::class;
+ echo static::class;
}
}
Example #2
~~~~~~~~~~
With configuration: ``['functions' => ['get_called_class', 'get_class_this', 'phpversion']]``.
.. code-block:: diff
--- Original
+++ New
<?php
-echo phpversion();
+echo PHP_VERSION;
echo pi();
class Foo
{
public function Bar()
{
echo get_class();
- get_class($this);
- echo get_called_class();
+ static::class;
+ echo static::class;
}
}
Rule sets
---------
The rule is part of the following rule sets:
- `@PhpCsFixer:risky <./../../ruleSets/PhpCsFixerRisky.rst>`_
- `@Symfony:risky <./../../ruleSets/SymfonyRisky.rst>`_
References
----------
- Fixer class: `PhpCsFixer\\Fixer\\LanguageConstruct\\FunctionToConstantFixer <./../../../src/Fixer/LanguageConstruct/FunctionToConstantFixer.php>`_
- Test class: `PhpCsFixer\\Tests\\Fixer\\LanguageConstruct\\FunctionToConstantFixerTest <./../../../tests/Fixer/LanguageConstruct/FunctionToConstantFixerTest.php>`_
The test class defines officially supported behaviour. Each test case is a part of our backward compatibility promise.