I am testing a complex system of many php programs that is under development. As I encounter bugs, I report them and the developers (sometimes) fix them. I haven't been involved in the design of this system.
I'd like to be able to give the developers some suggestions for fixing the bugs. There are two things I'd like to learn how to do to make this easier.
I would like to know how to run a program and watch how it includes other files and calls functions. Sometimes the bugs arise because there's a problem with a path; sometimes certain files the developers assume are getting included aren't.
There's another thing I'd like to learn how to do. When I am writing my own php programs, and I don't remember exactly where I call a certain function, I just open all the likely candidates in notepad++ and then do a search on a particular string, choosing the option to search in all open files. I can't do that with the complex system I am testing, because the file hierarchy is so deep. If notepad++ has a way of opening all the files in a particular hierarchy, I haven't discovered it.
If you recommend a particular debugger or ide, please also provide links for learning how to use it. Please avoid things that only work in unix. If there's some software that you think is particularly worthwhile and easy to learn to use, I'm open to the idea of buying it. Note that the easy to learn to use is important because I've never worked in a programming environment in any of my languages, but have always just put in my own debugging statements.
Thank you.