I don’t know if it’s due to over-exposure to programming memes but I certainly believed that no one was starting new PHP projects in 2023 (or 2020, or 2018, or 2012…). I was under the impression we only still discussed it at all because WordPress is still around.
Would a PHP evangelist like to disabuse me of my notions and make an argument for using PHP for projects such as Kbin in this day and age?
It’s not just that it’s interpreted. I code a lot of Python and I’ve never just read in another Python file as configuration and executed it. Reading a yaml or json file is like 2-3 lines of code. But I’ll bet it’s not that simple in PHP.
It is that easy in php:
$jsonConfig = file_get_contents('config.json'); $config = json_decode($jsonConfig);
Well in that case, it’s just bad coding.
I guess there’s a tendency for interpreted languages to attract more bad coders because trial & error is easier and you can get started in fewer steps. Also, fewer confusing compiler errors to deal with.
To be honest, the “configuration is an executed .php file” system does make some amount of sense in the context of PHP. When your app has to re-run everything to serve a web request, having to re-load the config (especially if it’s YAML, though JSON is less bad) is expensive. Re-running the PHP code, on the other hand, can be cached way better, in theory.
Of course, this is still all PHP’s fault in the end: the core problem here is that you need to re-run everything to serve a web request, without ability to pre-load state like configuration.