Extract Constant
The Extract Constant refactoring makes your source code easier to read and maintain. It also helps you avoid using hard-coded constants without any explanations about their values or purpose.
On this page:
JavaScript example
PHP examples
Extracting a class constant
When a constant is extracted within a class definition, the new constant is defined through the const
keyword and referenced through the self
keyword.
Extracting a constant outside a class
When a constant is extracted outside a class definition, you can choose whether it will be defined through the const
keyword or through the define()
function.
To extract a constant
- In the editor, position the cursor inside the expression to be replaced with a constant.
- Choose on the main menu or on the context menu of the selection. Alternatively press Ctrl+Alt+C.
- If a constant can be extracted from several expressions in the current context, PhpStorm shows all the relevant expressions in a pop-up list. Select the expression to apply the refactoring to.
- In the ExtractConstant dialog box, type the name of the new constant in the Name text box.
- Specify the scope to apply refactoring in:
- If the refactoring is invoked outside a PHP class definition, choose the method to define the PHP constant in the Constant syntax area.
- To have PhpStorm define the constant through the define() function, choose define.
- To have PhpStorm define the constant through the
const
keyword outside a class definition, choose const.This method preserves the approach accepted in PHP version 5.3.0. Note that such constants are defined during compilation therefore they should be declared at the top-level scope but not inside functions, loops or if statements.
- Click OK to start the refactoring.