Sometimes you have a large PHP project and you want to get its big picture (like bird's eye view). You are not interested in how many classes/functions does it have and how are they related to each other. Instead you would like answers to these questions:
- what are the files this particular file/fileset requires to work and vice-versa
- if I remove this particular file/fileset what files will not work anymore 'cause they are using it.
I am working nowadays with a quite large PHP project (300+ files) and I have such rhetorical questions quite often lately. So I wrote an small PHP application that provides these answers.
Furthermore, it not only answers those questions but also allows you to see an interactive graphical PHP file dependencies tree for these files (thanks to Springy for their JavaScript forced-directed graph library).
For those impatient check out the project's sandbox.
If you want to use it then get it from its public BitBucket repository.
Because a picture worths more than a thousand words...few screen-shots below from a real project I'm working nowadays:
- You start by defining a generic project including a name and its source path.
- You select only those files that matters to you (the fileset).
- Whenever you are curious about "what files does this file depend on?"
- ... or vice-versa, "what files do use/need me?"
- When a picture worths more than a thousand words...
- ... get a bird's eye view perspective for a specific file
Now, if you think that this article was interesting don't forget to rate it. It shows me that you care and thus I will continue write about these things.
Eugen Mihailescu
Latest posts by Eugen Mihailescu (see all)
- Dual monitor setup in Xfce - January 9, 2019
- Gentoo AMD Ryzen stabilizator - April 29, 2018
- Symfony Compile Error Failed opening required Proxies - January 22, 2018