Ask HN: Become a PHP expert
I know that PHP isn't the most popular language here, and it's not my ideal choice, but assuming that I need to become an expert PHP developer, what are some good resources I can read to accomplish that? I'm concerned with application structure, PHP gotchas, security, everything needed to deploy a quality PHP application. Any thoughts or suggestions?
12 comments
The most important aspect of becoming a PHP expert is navigating through a safe path in a land of a million pitfalls.
This means, you should not try to push the language yourself in anyway. Do the most straightforward, traditional things. Use a well tested framework (if you are doing web). Something like Symfony would do. Don't make your own 'deep' abstractions. The language is not strong enough to support them without a million unit tests to go with it.
Then you should have awareness of the most prominent of the Php pitfalls. /r/lolphp is a good resource for that. Go through the posts and read anything with more than a dozen upvotes.
Then, regarding security and other general topics, don't count on the Php community to answer your questions. I mean, don't take your questions to /r/php but /r/askprogramming or some general forums.
Trust only extreamly popular libraries that have in in use for long time. For example, Symfony components.
Two things you might want to take a look into is specifically Dependency Injection and the Composer dependency manager and how autoloading classes based on their fully qualified name (\Vendor\Package\Classname)
This means, you should not try to push the language yourself in anyway. Do the most straightforward, traditional things. Use a well tested framework (if you are doing web). Something like Symfony would do. Don't make your own 'deep' abstractions. The language is not strong enough to support them without a million unit tests to go with it.
Then you should have awareness of the most prominent of the Php pitfalls. /r/lolphp is a good resource for that. Go through the posts and read anything with more than a dozen upvotes.
Then, regarding security and other general topics, don't count on the Php community to answer your questions. I mean, don't take your questions to /r/php but /r/askprogramming or some general forums.
Trust only extreamly popular libraries that have in in use for long time. For example, Symfony components.
Two things you might want to take a look into is specifically Dependency Injection and the Composer dependency manager and how autoloading classes based on their fully qualified name (\Vendor\Package\Classname)
There's a number of excellent resources suggested in this post by others already so I wont repeat them.
One unique thing about becoming a PHP expert is the contempt you'll occasionally run into from others in the technology world.
Remember engineers get paid to solve problems for the business and success has very little to do with what the current flavour of "cool" is.
One unique thing about becoming a PHP expert is the contempt you'll occasionally run into from others in the technology world.
Remember engineers get paid to solve problems for the business and success has very little to do with what the current flavour of "cool" is.
This is an excellent resource for modern PHP development: http://www.phptherightway.com
This looks like a good resource, thanks!
Learn Python...
I know Python but I am going to be required to work on some PHP projects. Thanks for the advice though, I guess.
I would recommend laracasts[1]. I have learned tons of solid PHP principles, code structuring techniques...
1. https://laracasts.com
1. https://laracasts.com
Thank you
Laracasts.com