Before getting into PHP, it's a good idea to ask yourself if I should learn software. There must be a reason that pushes you to learn software?
Software is a constantly evolving and developing endeavor that requires continuous learning. In this race, where even programming languages are released at most every 3 months, you must be fast, learn quickly and complete everything without errors. The situation in PHP is no different.
What is the reason that pushes you to learn software, when you can make crazy videos on TikTok, Instagram or YouTube and make money?
What can I do with PHP?
First of all, the working logic of websites in understanding there is a benefit.
When we click on a link in our browser or type the address of a website in the address line, a request goes to the server side. The request is matched with the relevant file by specialized software such as Apache. The PHP file is called and processed. During this process, PHP usually connects to the database and takes the necessary data and returns it to Apache in HTML format, and the request is terminated for PHP. Apache also passes HTML data back to the browser.
With PHP, you can make a website for yourself, promote your products or services, set up a news site and present news from the world, make an e-commerce site and sell the products you produce or supply. It is also possible to make applications that run on the command line with PHP.
What can't I do with PHP?
Since PHP works in request-response logic, it is often used to create server-side applications. You can't make a desktop app or mobile app with PHP.
Should I learn this language?
If you are a young programming student or young and not satisfied with your profession, learning PHP will definitely add value to you. However, don't fall into the illusion that learning PHP will open up unlimited job opportunities for you. Due to the fact that it is easy to learn, there are too many entry-level PHP developers in our country. This causes the labor market in this ecosystem to deteriorate and many of the developers earn less than they deserve.
If you have completed your university education and entered the IT sector in some way, learning Java, Kotlin, C# or similar languages instead of PHP will add more value to you.
What is the origin of PHP?
In the early days of the Internet, most sites consisted of static content. Interaction with users was limited or nonexistent. There was almost no way you could even know how many people visited your site. Still, it was possible to write various CGI scripts with C. It was 1994 when Rasmus Lerdorf set to work creating various CGI scripts for his site. was showing. Since the internet was still in its early days, there weren't many alternatives and PHP was completely free as well as being a pioneer in this regard. By mid-1997, 50.000 websites were using PHP.
Is PHP paid?
- PHP is free software. It does not charge you any license fee directly or indirectly.
- It is commonly used server-side with Apache, and Apache is likewise a free software project.
- You don't need a paid and dedicated Integrated Development Environment (IDE) to write PHP code.
- PHP does not need a special operating system to run. It can run on Linux, Mac or Windows operating systems.
- PHP is very advanced in database support. It works seamlessly with free databases like MySQL/MariaDB, PostgreSQL or paid databases like MSSQL or Oracle.
Who is it used by?
Global sites like Facebook, Wikipedia, WordPress, Spotify PHP uses. It is seen that many e-commerce sites in our country are also written in PHP (I do not link because it will be an advertisement). There are also many paid or free content management systems (CMS) written in PHP.
Many companies prefer to use PHP because of its flexible language structure, constant updating, renewing itself over time, supporting OOP (Object Oriented Programming), producing very effective results in terms of price-performance and having a wide community support.
They say PHP is dead, is it worth learning?
Where and how can I learn PHP?
There are many resources for this. Some of these resources cover the basic PHP features very superficially and skip the practical side of the subject.
The most advanced training developed for this language, prepared by Zend company and consisting of 3 stages. PHP Fundamentals training series. Unfortunately, all of these trainings are paid, completely in English and very expensive trainings. It costs $3.500 excluding the certificate. Since I'm sure you don't have that big of a budget, I'm going to recommend some totally free PHP tutorials for you.
path.dev PHP paths
Patika.dev trainings are not limited to the entry level. There are Intermediate and Advanced PHP training paths and these trainings also include topics such as OOP/Object Oriented Programming, Software Engineering 101, SQL, NoSQL, Rest API.
Patika.dev site offers you free training on not only PHP but also many languages, and also organizes Bootcamp events. When you complete the trails, you have the chance to participate in these camps.
Instead of video-based training like Patika.dev and BTK Academy, the topics are divided into digestible parts and text-based with simple English narrations. In order to understand the tutorials, you must have an entry level or higher level of English.
Udemy site stands out as a platform where trainers can provide paid or free training. Various content about PHP prepared in Turkish is also available on the site. Unfortunately, none of the free content for PHP is sufficient to provide enough introductory information. Paid trainings seem to be around 150-250 dollars. If you opt for a paid Udemy course, be sure to check out how much space it dedicates to OOP/Object Oriented Programming. It's also worth making sure it includes Secure Coding with PHP topics.
Which book would you recommend?
Most of the published books on PHP education are very old. The two most recent books were published in 2019. The PHP Training Book, prepared by Mehmet Ali Uysal, stands out as a resource that you can use for intermediate education after the above trainings, as it is aimed at the current version and gives wide coverage to OOP / Object Oriented Programming. Other books are out of date as they are for pre-PHP 7 versions which are no longer supported.