Home >Backend Development >PHP Tutorial >How long does it take to learn PHP at the earliest? What is the learning route? Do you want to sign up for a training class?

How long does it take to learn PHP at the earliest? What is the learning route? Do you want to sign up for a training class?

WBOY
WBOYOriginal
2016-07-25 10:01:311965browse

I am a junior in a second-rate school, majoring in communications, and it is really difficult to go down this road. I want to learn PHP by myself. My self-learning ability is not bad. I would like someone to guide me on the learning process and my opinion on applying for cram school. There are many people around me who have applied for training. There are also many training classes coming to our school to promote. I am really confused, but I prefer self-study because I am very immature and think that is cooler. Please give me some advice. Thank you. Reply content:
Well, I am not an expert on PHP; but on how to learn PHP, I am an expert.

I will explain it from four aspects!


How long does it take to learn PHP the fastest?

  1. Efficient learning method

  2. Specific learning route

  3. Similarities and differences between self-study and training

--Wait a moment, there are students in the classroom asking questions.----

--Come back and continue---

1: How long does it take to learn PHP the fastest?
No prerequisites Discussing issues will only turn into meaningless quarrels.
Therefore, we first set two prerequisites:

Prerequisite 1. The student’s basic requirement is “without any programming language foundation” and able to “be proficient in operating a computer (typing on the keyboard, creating directories, etc.)”.
Prerequisite 2. "Learning PHP" means entering a formal PHP job.

Under this premise, whether self-study or training, the limiting speed of learning PHP is: 2 months!

A classmate named "Xing Luo" spent 56 days on self-study in 2013 and got an offer. Now he works in Nanjing.
"Xing Luo" has 16 hours of study time every day.

Here is his study and interview process:
What happened in the interview [1]
Those things in the interview [2]
Those things in the interview [3]

In the past 2 years, hundreds of students with varying foundations, high school graduates/classical literature majors/English majors/lathe workers/security guards/miners from Zhangjiakou...etc., they spent 2 months to go from Boer Education
Get a job in PHP position. The fastest student is 49 days, and they study 12 to 14 hours a day.


How can you learn in such a short period of 2 months? In fact, you should ask the other way around:
Why can’t you learn in 2 months? What the Olympic Games pursue is the limit of human physical strength.
When learning programming, why don’t we pursue the limits of our brainpower?

In sprinting, 10 seconds for 100 meters was once considered by scientists to be an impossible limit for humans.
But after being broken through by Jim Hines, more and more players have broken through this limit.
Therefore, the real limit is within your heart.

Of course, subjective hard work alone is not enough. Scientific and efficient learning methods are the guarantee for rapid learning.


II: Efficient learning methods--There is no shortcut to learning programming, but you can avoid detours.
Programming The fastest way is the iterative learning method, which is also the theoretical basis for Boolean Education
2-month training. What is iteration?

Most teaching methods are to teach one subject at a time.
And in a course, it is taught chapter by chapter, section by section.
----For programming, this is wrong!

The right way to learn---

First the main body, then the thick lines, then the details, lead the students to gradually deepen and iterate repeatedly.
Take HTML courses as an example. Almost all courses start by talking about tags, p, h1, h2, div, pre, ul, li.
Just imagine: If a student with zero basic knowledge is told so many labels at once, can he not get dizzy?

Even
so-called "famous teachers" are nothing more than loud voices and detailed PPT and note-taking skills. But with this wrong teaching method, the more detailed the PPT is, the harder it will be for students to learn.
The correct approach is to ignore the label. Let me tell you first, look at this webpage, if it is this piece of cloth,
How to cut it into three big pieces? -- Main stem first
How to cut the middle piece into two left and right pieces? --Thicker lines
How to insert text and pictures between the left and right pieces? --More details

If you don’t understand this learning method, please take a look at the sketching process. The correct sketching steps are a typical iterative learning process.
As shown below.

Do you understand a little bit about the iterative learning method?
Do you understand a little bit about the iterative learning method?" " , How long does it take to learn PHP at the earliest? What is the learning route? Do you want to sign up for a training class?This course is a very typical reflection of Boolean Education 's unique "iterative learning method"
Please allow me to be arrogant, this is the best HTML webpage course in China, there is no "one". How long does it take to learn PHP at the earliest? What is the learning route? Do you want to sign up for a training class?
3. Specific learning route

The first round of iteration
(6 days, quickly grasp what PHP is all about building a website)
HTML (3 days of learning + 2 days of practice) Tutorial: Learn HTML web development in 8 hours
  • Get started with PHP at the speed of light in 3 hours (half a day of learning + half a day of practice) Tutorial: pan.baidu.com/s /1pGHc0

  • The second round of iteration(14 days, solidify the theoretical foundation of PHP and make a blog using process orientation)
    • Consolidation of PHP basics (3 days of learning + 2 days of practice) Tutorial: PHP Basic consolidation - Self-study IT website
    • MySQL 3-day basic consolidation (learn and practice on the same day, 3 days in total) Tutorial: pan.baidu.com/s/1i3oVAk
    • Blog development (cookie/session, file upload, paging, GD thumbnails, verification code, all will be practiced in this project, 6 days)
      Video address: pan.baidu .com/s/1dEqLSy Password km1j

    Third iteration(4 days, continue to improve theoretical knowledge)
    • PHP object-oriented (2 days) Tutorial: Link: pan.baidu.com/s/1qXvXDq Password: apvh
    • PHP common object-oriented classes (1 day) Search and write the upload class and thumbnail class by yourself , Pagination class, MySQL class
    • Blog again in object-oriented way (1 day) Same as above, explore by yourself

    Fourth iteration(7 days, framework, and other practical development tools to prepare for employment)
    • Http Protocol (Half Day) Tutorial: Link: pan.baidu.com/s/1i4Onue Password: x538
    • Regular Expression (Half Day) Link: pan.baidu.com/s/1bLbwCm Password: k7tk
    • TP framework (1 day) Tutorial: See the next line.
    • Use TP framework to build a mall (5 days) Tutorial: pan.baidu.com/s/1bTRsxo Password: ed5i (released on 2016/07/17)

    The fifth iteration (7 days, js/jquery and other front-end skills)
    • javascript (2 days of learning + 1 day of practice) Tutorial: Learn Javascript while talking and laughingJS game - don’t step on the white blocks
    • ajax (half a day of learning + half a day Practice) Tutorial: pan.baidu.com/s/1hMOA Just watch the first 10 episodes
    • jquery (2 days of learning + 1 day of practice) Tutorial: jQuery practical classic

    The sixth round of iteration (4 days, Linux server)
    • Linux (3 days) Tutorial: Basics of getting started with Linux
    • lnmp environment (1 day) Tutorial: Teach you how to compile PHP7 (nginx +mysql+php7)

    The seventh round of iteration (3 days, secondary development of practical open source products. Although the set of templates is low, there is no guarantee that you will definitely go to a big company, right?)
    • PHPCMS template (1 day)
    • ecshop secondary development (1 day)
    • discuz plug-in development (1 day)
    The eighth round of iteration(practical technology for interviews and employment)
    • svn+git (1 days)
    • bootstrap responsive layout (1 day)
    • WeChat development (1 day) Tutorial: pan.baidu.com/s/1hqWeiFpan.baidu.com/s/1c0Yokh
    The ninth iteration(3-5 years,note it is "year")
    Various frameworks, JS in-depth, MySQL optimization, PHP bottom layer, Linux operation and maintenance, network, C language, python...

    Four: Similarities and differences between self-study and training
    Note: There are similarities and differences in learning methods, but there are no similarities and differences in knowledge.
    Whether it is self-study Or training, CURD is still the same CURD, for loop is still the for loop

    The respondent prefers "self-study" because "that's cooler", this is really good news.
    It means you love the program, not just for it Study only when you make a living.
    You will definitely become an excellent "programmer"

    In fact, training means spending money to buy a learning atmosphere and time. Self-study means relying on perseverance, spending time and saving money.

    In my experience: For the same 0 basic students, self-study usually takes 6-12 months. Training usually takes 2-4 months. And the total cost of training is generally between 10,000-20,000, about 2 -3 months salary.

    The difficulty of self-study is:


    There is no compulsion, and study time is easily interrupted by mobile phones/WeChat/QQ,

  • Easily frustrated, a small problem has not been solved all morning, and there is no teacher's guidance, which is particularly shocking.
  • Learning and practice are not uniform, I only watch videos, feel that I understand, and pass by, often not completing after-class cases or projects seriously .Resulting in a shallow foundation.

  • So, if you are still early in employment, such as sophomore or junior year, you may wish to study on your own.
    If you are close to employment, you may wish to train.

    But no matter which path you choose, hard work is a must. !

    Five: Why is the PHP training cycle often longer than 2 months?

    2 months is based on pursuing the limit, but we don’t need to torture ourselves like ascetics.
    Bolt can run 100 meters 9 seconds, but he wouldn’t sprint 100 meters every morning during his morning jog, would he?

    Boolean Education used to use the 2-month extreme teaching method.
    So in most of the previous classes, there was not a single girl. Why? ?
    It’s so intense that even boys are tired.

    If we are kinder to ourselves and add another month, for a total of 3 months, the learning pressure will be much less.
    If we also consider the "negative foundation" "Students"--if they are not even familiar with the keyboard, just add 1 month of basic courses.

    So----if training, 4 months is more than enough!

    If we continue If you lengthen the cycle, then you don’t start from teaching, but from business. After all, if you lengthen the cycle and the tuition is high, it’s easy to deceive novices and say - "Look, we teach a lot... ..."

    - It will take a week at the fastest...

    The first day, in the morning, basic syntax
    something that is found in all programming languages, is actually very simple:
    declaring variables, assignment, operations, judgment, looping,
    ——These contents I I think it can be done in less than two hours
    because there is really nothing much to say.
    Here you can also study the differences between integers, floating point, strings, objects, and arrays
    You can also learn about the mutual conversion of encodings
    Then the difference between the establishment of method objects and the use of include require
    -this only takes two hours , of course it’s not difficult to use, it’s just the simplest call
    You can also learn about public, protected and private $this-> and self::

    OK, let’s go for lunch

    First day, afternoon , database
    How to connect to the database, how to use the database, SQL statements
    (only involving simple applications such as add, delete, modify, query and LIMIT ORDER BY GROUP BY)
    - this may be more difficult?
    Then you can just find a database class to learn how to use it,
    you can also get in touch with the related content of the extended class library
    - this is just a good way to review the knowledge in the morning.

    Rest


    The next day, HTML, GET/POST, preliminary understanding of JS and CSS in the morning
    One morning passed - it has little to do with PHP, so I won’t say more


    The next day, explanation in the afternoon Establishing the MVC concept with primary entry files
    This may be difficult but it can be explained in simple terms
    a.php
    $a=$_GET['type'];
    if($a='login'){
    include 'login.php';
    }
    if($a='newmessage'){
    include 'newmessage.php'
    }
    For example, this is a very simple entry file
    In this case, it should be easy to understand
    In this way, you can learn to create A simple message board - of course it doesn't refresh automatically.
    Break


    The third day, classes/class libraries, OOP, modular programming ideas

    The fourth day, how to track errors and quickly locate errors
    In fact, at this point, the basic tutorial on PHP can be considered to be over
    Any program is generally a complication of these contents

    The fifth day, HTML upload JS JQ AJAX
    The sixth day, algorithm complex SQL statements, database optimization
    The seventh day, preliminary contact with frameworks, caching and other applications
    I want to beat people Please don’t slap me in the face...
    Thank you I couldn't sleep in the middle of the night, so I saw this question and decided to answer it.

    I don’t know how long others have used it, I will only use my situation to tell you my answer.

    The answer is: one month.

    Let’s talk about the starting situation: I have never been exposed to programming, let alone php, html and css. Well, in fact, I know nothing.

    Let’s talk about the final situation: you can write a website independently and deliver it to the client.

    The website functions include article management, image management, etc. It also has the simplest forum and question and answer section.

    There will definitely be bugs in what I write, but the basic functions must be usable without any problem.

    The website includes a front desk, a back desk, a user center, a membership system, and third-party interfaces such as a QQ login interface without payment interface.

    Why do I clearly remember it was a month? Because the client said he would send me a 500-yuan red envelope if it was completed within a month, and I got that red envelope.

    It’s because from then on I embarked on the path of no return as a coder.

    Learning order: html, css, js, php

    Why is it in this order? Because the customer wanted to check the progress from time to time, so I had to make a static page model first to coax him.

    What should I do if I don’t know? Baidu. At that time, people didn’t know how to use the Internet scientifically.

    Also, ask people, pay attention, this point is a hundred times more important than the previous point! ! !

    If someone can help you when you are stuck, it may save you a day or two than trying to find a solution yourself! Sometimes you may be stuck on a very basic question for a long time, and the question may be so basic that you can’t even search for the answer! Because the people who wrote those tutorials assume that you know how to do it!

    Study (or work?) time: I haven’t counted it yet. When I get tired from writing, I sleep in a sleeping bag. When I wake up, I continue writing. When I feel tired, I go to sleep again... As for taking a bath or something, we can wait until we finish...

    That sleeping bag It's still in the cabinet at home. I haven't used it since then, but every time I see it, it reminds me of this period of time...

    Writing: procedural, what? Object-oriented? Sorry, I won't do it then, I won't do it until the second month...

    Please imagine the confused expression when the customer wants to do secondary development on the project when he sees the code.

    Framework? Sorry, I didn't know about this at the time. In fact, when I knew there were open source frameworks available, I was already using the framework I wrote...

    Read more, comrades! If I had known there was such a thing as thinkphp, why would I have suffered so much?

    What a painful realization!

    I still remember the first time I saw someone else’s system code, it was a C2C mall of shopnc. At that time, I didn’t know what a single point of entry was and what oop was. After reading it, I found that tm could still be written like this?

    Well, thank you shopnc here. It was not what it is now. Now I go to your website and go to an ecshop. What do you mean by calling me every three days to harass me?

    What should I do if I’m still not sleepy at 3:30?

    Let’s end it. To sum up, a stupid person like me can learn this level in a month (I dare not say he has learned it). There should be experts who can learn it in a shorter time. People with basic knowledge should not be like me at that time. It was so painful, because at that time I knew a lot of things but didn't know why. Many things could only be understood when I went back to learn them later.

    A few important points:
    1. You need someone to guide you or someone to ask for advice.
    2. Be tough on yourself.
    3. There needs to be pressure. If someone is urging you to make progress, your motivation will definitely be different from that of typing the keyboard a few times when you are happy.

    Give me some suggestions:
    1. You can go to the Witkey site to pick up the task, so that If someone urges you, don’t worry about the money, because you may not want to do it at any time. Buy a new mobile phone card and open a new mobile phone number (I won’t tell you this is what I do when I learn a new language or skill)
    2. If you have a good project, don't look for outsourcing, because you may meet me at that time.
    3. Don’t send tasks to Witkey sites for projects with time requirements. See reason 1.
    4. You'd better form your own technical team.
    5. If you can’t do the fourth step, please teach yourself programming.
    6. Don’t pursue speed in development. The fastest project I did was 8 days (another tragic story, my sleeping bag almost returned to the world). The slowest is the company I am currently working in. I can use an order system in one or two months. I believe people who can see the code of the two projects will understand the difference.
    7. In addition to PHP, please also learn at least Android and iOS. If you only know PHP, believe me, the interface you write for the first time will definitely need to be reworked.
    8. Learn C. If you find it boring, you can play with microcontrollers. What, assembly? Now the microcontroller can run c, okay! (Am I showing my age?)

    Also, I hate js.

    I always feel that people who write js for a long time are like people who drive for a long time (driving a real car, not an experienced driver), they will use a string of swear words (personally, don’t use it if you don’t like it) If you have a background in learning c, c++, and java, you will quickly get started with php. You can first learn thinkphp and use the wamp integrated environment and phpstorm editor. Understand the principles of web development through this framework. Remember, the core focus is addition, deletion, modification and query! About a month, depending on your situation. During this period, you can become familiar with html, css, and js (through 3w school). Including PHP original sound, recommended How long does it take to learn PHP at the earliest? What is the learning route? Do you want to sign up for a training class?
    During this period, you can learn by watching videos (there are many TP framework videos) and project exercises. Now that I almost understand the web development model, I can change to a framework such as yii, phalcon, laravel, etc. After becoming familiar with one of these mid-term frameworks, you can study it systematically. Development mode, learning server nginx, linux system, http protocol, algorithm, etc.
    My current PHP development environment and tools
    1, php+mysql+nginx (configured in vagrant)
    2, framework laravel
    3, database visualization tool sequel pro
    4, testing tool postman
    5, code management tool git Majoring in network engineering, I have some C and Java basics. I studied for three months and then found a job. If you don’t study by yourself in college, you have plenty of time. Why need training!
    If you want to learn PHP, should you study by yourself or take training? I wrote it before...my suggestion is still the above sentence Girls can study, but finding a job is too difficult.Mainly employers recruit people wearing glasses. I generally don’t recruit girls when I see them doing procedures. There are several reasons.
    Afraid of having too many emotions and poor communication
    Afraid that it is inconvenient to work overtime in the middle of the night or simply unwilling to work
    Afraid of getting married and having children and basically not caring about work

    PHP is not difficult, it is easy to learn how to make a small website. The better the ability is.

    If you can learn something very good and have successful projects on github, those above will probably impress the employer. But if you are just an ordinary programmer. Most companies still prefer boys.

    There are also most programmer groups who despise those who came out of training schools. The most popular ones are those who are majoring in prestigious schools and then those who are self-taught in non-science majors. The least popular ones are those in training schools. Of course, depending on the corporate culture, if it is a very small company, everyone may not talk about it so much. If it is a company that even Tsinghua University and Peking University look down on, it may not be mentioned so much.

    One more thing, in fact, why don’t girls learn front-end technology? They also write programs. The market gap is still big and the salary is still high. And compared to the back end, sexism is not that big.

    Don’t look at the group of male programmers who complain every day that they are short of girls. They are not short of female programmers, they are short of encouragers! I am currently a sophomore, and I am also a student like the poster. A year ago, I knew nothing about these things. Because I am also a newbie who is not deeply involved in the world, so what I say may not necessarily be useful, but I still hope it can give some help or inspiration to the poster

    Let me first talk about my experience of learning PHP
    I started learning PHP at the end of the winter vacation last year Yes, I was still a web novice at that time, but so far I have mainly written four websites:
    1. A website for recording notes. This is the first website I wrote, and it was still written in mixed... When I finished writing it and showed it off, I was xssed by my friend... The interface is quite rough, but I got started with php and mysql through this
    2. Personal blog. Regular functions, classified comment article management, the interface is also simple and mixed. At this time, I further solidified PHP and MySQL, and started using bootstrap
    3. Book trading website. The project needs to build a second-hand book trading website. I won’t go into details about the functions. At this time, I know that the front and back ends are separated, with Angular as the front end and PHP as the back end. When I was almost done writing, I installed the laravel framework on the backend and rewrote the backend. Now I know how to use github. Find various special effects in front-end css
    4. Personal blog. Since the separation of the front and back ends, I can no longer go back to the mixed method, and I can’t stand my blog anymore. So I re-wrote my blog during the winter vacation, but instead of using client-side rendering before, I continued to learn the laravel framework and used it to write blogs. I deeply felt the power of laravel (previously I just provided API, here is the real learning)
    Middle I also came into contact with lnmp, vps, redis, vagrant, etc., so I won’t describe them one by one

    Then I will tell you my personal views on learning php
    w3school is a very good website, where you can read html, css, js You may not understand all the tutorials, but you can come back and check them later if you know these things. Then I will try to write a few static pages to get familiar with html and css. After that, you can learn PHP and MySQL to write several dynamic websites. At the beginning, you can use software such as wamp or xampp or phpstudy to deploy on windows. Follow the tutorial step by step, and then start trying new things on your own. In fact, this step feels like basically operating the database, using only a few sentences
    and then starting to build a few relatively complete websites, such as personal blogs. Basically, you can make a personal blog, and you should be getting started with PHP
    You can read more PHP documentation later, or get in touch with the PHP framework (Laravel is highly recommended). You must type more code, write more and use it more, this is the fastest way to learn

    As for the training institution, I think the poster can completely learn by himself. PHP is not difficult. If the poster is interested in this aspect, he will definitely be able to learn it quickly

    I hope My words can provide some help to the poster’s study. It’s not that training is not recommended, but the level of some training teachers is really low. To be honest, I watched some training videos in the early days of my study, but after I reached a certain level, I found that those teachers were really low. You can't even look directly at their perspective of understanding the problem. The angle from which you start thinking about problems largely determines your future development direction. Of course, there are also good ones, such as the highly voted teacher Yan Shiba above. He has a large number of lecture videos circulating on the Internet. If you are willing, you can study on your own.
    But one thing I always disagree with is the saying that two months is enough. A lot of knowledge requires a long time to accumulate, and two months is only enough to understand the surface. I have been studying for more than a year and I still feel like a scumbag. Learning requires sudden enlightenment again and again, and two months may not even give the brain enough time to think independently. Don't talk about the limits of the human body. Muscles will get tired if they exercise a lot every day. What's more, the brain still needs to program and learn such a labor-intensive thing. Sometimes, man cannot defeat God, you have to admit it.
    In short, if you choose training, please choose reliable training and find a good teacher. No quick gimmick, training or not, is believable.It is best to have a basic knowledge of java and c. It is very fast to learn. I have a basic knowledge of java before. The learning route is
    php native basics-smarty engine-mvc development. I write a micro-framework based on smarty-tp framework. It is best to learn tp3. .2—yii2—Then I’m looking for a job
    ——————————————————

    If you don’t have a foundation, I suggest you finish learning native PHP, start with regular expressions, and understand the smarty engine Basic principles, language is not the key, thinking is the center of development, front-end knowledge is also necessary, ajax, json, html5, js, jquery, if you are still interested, you can learn a little about server linux, shell, and xss attacks like me , sql injection, and other weird hacking techniques. Actual development also requires git, composer, etc. Basically, to lay the foundation, first make a project in the company.
    Statement:
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn