I have got a few messages on my LinkedIn regarding my PHP post the other day so I decided to write a bit about the start of my journey in the world...
For further actions, you may consider blocking this person and/or reporting abuse
My advice to you is ... dump xampp and go with Docker. Particularly with vscode you can use docker as a Dev environment as you would with your local filesystem.
Also consider that in 99% of the time a web app will run on a Linux system or a Linux backed container. Eventually you will start hitting the differences.
Isn't docker a bit of an overkill for someone who's just started learning PHP?
You're right, stick to Xampp/Wamp/EasyPHP for now, it's the better tool when you are starting to learn this language.
Overkill in what sense? You don't have to learn it straight off but you can use it in the sense that you can install it and everything else comes from the IDE
Actually, I dumped phpstorm for vscode. While phpstorm is the best for php in general, vscode is more comprehensive (if you do web you will need js and vscode is the best for that, plus intellisense for a variety of other stuff like nginx/Apache configs).
Phpstorm has the best support for the vast majority of frameworks, that's for sure but beyond stuff like Laravel ok n particular I can't think of a single thing that phpstorm does that vscode with intelephense can't do at least just as well and for a fraction of the cost.
If You do, I would suggest intelephense instead of intellisense. Intellisense is the engine underpinning most language servers across supported languages. For PHP is ok (autocomplete is as good as any) but intelephense is way better with symbol find and replace, much better discovery of classes (composer or not) formatting with phpcs support and some integration with sonarqube rules (on clientside)
I'm going to come back with another reply mostly because of the first sentence "I'm not sure why you'd want to work directly on containers or k8s pods" - it's one I hear a lot (particularly in the PHP world) and it's a very interesting thing.
About k8s pods, unless you happen to use PHP for microservices (particularly if you're using roadrunner instead of fpm or one of the newer microservice oriented frameworks like symlex or lumen) you probably don't need k8s generally (a regular monolith application is cumbersome to setup with k8s and won't perform nowhere nearly as well). But if, like me, you do then you will eventually work for a system that's big enough (my previous project had ~ 100 microservices spread across 4 languages) so that you can't run even the close dependencies locally. In that case what you would do is either run a local container + a tool called "telepresence" to have your local container effectively replace a container in a pod in a remote cluster or, alternatively, you would just run a remote pod alone. You would continue editing your code, running your xdebug, etc in Vscode with everything taking effect both locally and remotely. Technically that covers both cases.
Just locally, however, there's also the case when it's a bit of a headache to reliably install/build php modules locally (eg: on Mac and Windows you can't build/get all versions of php's amqp extension if you hope to keep your OS updated, same with redis to a certain extent). So, just run a Docker container. Same with the (granted, edge case) when you'd need to switch multiple PHP versions on the fly or you simply want a reliable environment tat closely mimics a stable remote (eg: I want to have modules x/y available but not z - will you uninstall and reinstall z whenever needed?)
Well, Microsoft doesn't offer all that much out of the box for PHP but withcl Intelphense, Gitlens and so on, Vscode does much more than phpstorm. Like I said, it lacks in specific support for PHP frameworks ( the only one fully supported is symfony) but other than that it can do exactly the same things (and more, from what I remember with phpstorm you can't work directly on the filesystem of a container or k8s pod)
What a lovely and comprehensive addition to what I wrote! I deeply appreciate your input and yes, I agree with you that a framework is the realistic next step and the VSCode part was more of a meme haha! :D I've used some IDEs from jetbrains like WebStorm and RubyMine and I like them. Might try PHPstorm as well!
Well, guess it's a matter of taste. I like how intelephense does the navigation to function definition or usage way more than how phpstorm does it. I'm pretty sure you didn't try the "pro" as in paid version of intelephense which is what brings at least most of the stuff you mentioned (10 USD lifetime license) which is what actually comes in the ballpark of phpstorm (and container support to boot, can't really image why an editor could call itself a modern IDE without it)
Nice to meet you, Swishyfishie!
Notepad++. Why use something more complicated?
Well, glad you found a way to make microservices that don't exchange information in any shape or form.
I touched Laravel a bit a few months ago and because I am used to Rails, it seemed quite familiar so I'll go with that! :D Thank you for the recommendations!