I am currently working on a PHP project that uses composer to manage 3rd party dependencies. This project has an /installer
subproject which, like the name suggests, contains a small tool that handles the installation and initial configuration of the "main" project. The installer
tool also uses composer to handle its dependencies, which are kept separate from the main project's libs.
For convenience reasons, these two projects go into the same git project, and as such in the same PHPStorm project. As both projects dependencies sometimes overlap, I often get a "Multiple definitions exist for class" warning. While this is neither unexpected nor a major issue, I would like to know if there is actually a way to tell PHPStorm "hey, treat everything inside /installer
as an independent project, and don't cross-check classes with the outside scope`.
Thanks
You can right click the files in the Project Explorer and mark them as "Plain Text", so these classes are not interpreted as source code.
The better way: Use Namespaces
It is possible to mark directory as Excluded, so PHPStorm will just hide it and stop index files inside, so no warnings. But in the same time it will be impossible to view (read) that files.
Right click directory (in your case /installer
) in Project pane
and choose Mark Directory As -> Excluded
You can disable this inspection (works for at least PHPStorm 9.0 or later):
Settings -> Editor -> Inspections -> PHP -> Undefined -> Undefined class
Uncheck Options (right bottom) -> Don't report multiple class declaration potential problems
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With