An advanced PHP engineer should have the ability

Source: Internet
Author: User
Tags mysql connection pool php framework

An advanced PHP engineer should have the ability

Many interviews, a lot of staff capacity requirements have "PHP Senior engineer word", if you really like PHP, and you just start, then I simply say a PHP senior engineer should have, hope to the beginner or have reached the intermediate level of PHP engineers some help.

First, a calm state of mind

Like all programmers, to write a good program, no good mentality is not.
Do not be impatient, do not give up lightly.
In the process of program development, especially junior high school programmers, write the program or architecture will encounter a lot of problems, some of which are more mentally retarded, and some problems have not met, so not too impatient, should be one by one to troubleshoot the original source of the problem, to kill it. An impatient mindset to develop a system is not responsible for the project. Impatience will make people learn to do, let people learn to escape. And I personally Beijing two years of simple life, give me one of the biggest experience is: my mentality more calm.
Believe that this mentality will also help you in other aspects of the ability to do things.
Why the mentality included, I want to explain: he is different from the sales function, need a great passion, but need to think quietly.


strong> two or one sets of problems to be solved in the heart.

A colleague who has developed a program has written in the QQ signature: Each fix a bug, give oneself a promotion. Indeed, there are no programmers who really solve countless bugs or problems, no experts, no senior programmers. And a senior programmer is from this problem-solving process to constantly experience themselves, forming a set of heart problem-solving ideas, to their own strong.
I also briefly talk about some of the problems that PHP programmers often encounter when they grow up, and if you haven't met or rarely encountered one, then you are two extreme people: either beginner or advanced, haha.
1, encoding issues
2,php and SQL database execution efficiency issues
3,session and cookie domain and encryption resolution issues
4, program execution order issues
5, application-written multi-environment issues
6, classification construction and structural design problems
7, string handling problems: Regular expression processing or simple PHP string processing functions to handle
8, various template engine writing limitations issues
9,php and web-side data interaction issues (such as Ajax, interface calls, etc.)

Three, excellent basic knowledge of PHP
There is no perfect basic knowledge of PHP, even if the mentality is good, the ability to solve the problem is strong, can only be armchair.
The basic knowledge will allow you to be in the process of project development.
I will also briefly say what is the basic knowledge that PHP engineers should have (in fact these are common in recruitment requirements):
1, grammar rules, this does not say, this will not, there is no introduction, hurriedly buy a book or find a website to fill
2,mysql all kinds of SQL statements, additions and deletions to the basic do not say, in (), Union,left (), the left Join,as,replace,alter table,where field sorting, various indexing methods to be particularly familiar with
3, will build their own lamp environment and WAMP environment, with integrated software one-click installation does not count. Development process, for their own development of the environment structure is not clear, how to troubleshoot problems? So at least use the opposing MSI file to install the development environment you need. Install 3-5 times Success, this is OK, you will have to install a variety of extensions, configure Apache services, know the various parameter settings and know how to set various parameters; Linux operating system basic commands.
4, familiar with the web aspect of other programs, because PHP is not a completely independent thing, he is a and other languages and features to complete a project, if the other languages and elements are not familiar with, in the team collaboration process will be very difficult. These other elements include: Html,javascript,jquery,xml,http protocol, regular expressions, etc.

Iv. Integrated Internet applications and project management knowledge and literacy

1, knowledgeable and proficient in learning
Only self-study, not to look at, learn to learn people's practice, will be like the well-off, difficult to see the vast sky; So, do not be obsessed with programming every day, learn to take some time to see some large open source system architecture ideas, as well as the construction of large business sites. To learn from them, to supplement their own shortcomings.
For example, at least know what different types of open source systems are, like Uchome,dede,phpcms,wordpress,discuz, Empire, etc.
See more, you will also summarize some of the conventional ideas, such as caching mechanisms, such as template mechanisms, such as static page generation and so on.

2, Project Solution selection
Different needs, with different institutions and selection. It is often said that the "punches, soldiers to block", some of the structure is strong, but for small projects will be very difficult, that is, the murderous need not sledgehammer. It is important to choose according to the requirements.
Selection is not casual can be fixed, need a PHP programmer for good Reserve, personally feel at least need the following reserves, to have the ability to choose:
Proficiency in the application of at least one PHP framework, two-three PHP open source system, with its own set of application systems.

3, good project management accomplishment
Project is not always in the development process, the project will enter the operating period, maintenance period, so that with good project management literacy will make the project more stable and controllable.
Good project management literacy includes:
Good project development and maintenance habits, remember: do not for a moment of effort, resulting in repeated work after repeated. Always remind oneself will work flow, process planning, standardization simplification.
Good multi-person cooperation management awareness: The project is not a person, is a product of multi-person collaboration, but also to serve the public, therefore, to enhance the sense of cooperation, so that the relevant personnel together to improve the project.

4, rich experience in project development and application
Study theory, to test or examination is the thing in school, no project experience, like full belly scripture, spit also difficult spit.
This requires the actual project to learn to translate their knowledge into the needs of the realization.

5, good Development specification
Code readability: Object, method, function comment; a set of mature naming conventions;
Code redundancy Bottom: The reuse of programs and files, cohesion, low coupling
High execution efficiency: Use the simplest program flow to achieve application requirements, do not disturb the Big bend
Code security Good: To be a vigilant programmer, any user input and upload files in the place to be extra cautious, perhaps a programmer's momentary negligence will cause a system to crash in an instant.

In addition, more than a few words, PHP Senior engineer, in fact, a little can adhere to, and like PHP is not too difficult, it is difficult to learn to use tools to achieve ideas, whether it is their own ideas or the needs of others, learn to transform.
In this way, do not know more about the trend of Internet development, project development and management processes, etc.

Read more: https://www.zhihu.com/question/20232930 (what skills do PHP advanced programmers have to learn?) )

Related recommendations:

PHP implementation of MySQL connection pool effect code

A detailed explanation of how PHP curl and Java http are used

php development of recording temporary to permanent storage PHP tips

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.