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:
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
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
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:
- To have only the selected expression replaced, clear the Replace all occurrences check box.
- To have PhpStorm replace the selected expression wherever it is used, select the Replace all occurrences check box.
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
constkeyword 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.