[PHP] Programmierer-Skill-Stack

WBOY
Freigeben: 2016-08-08 09:24:18
Original
884 Leute haben es durchsucht

html {font-family: sans-serif;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%}body{margin: 0}article,aside,details,figcaption,figure,footer ,header,hgroup,main,nav,section,summary{display: block}audio,canvas,progress,video{display: inline-block;vertical-align: baseline}audio:not([controls]){display: none; height: 0}[hidden],template{display: none}a{background: transparent}a:active,a:hover{outline: 0}abbr[title]{border-bottom: 1px dotted}b,strong{font- Gewicht: fett}dfn{Schriftstil: kursiv}h1{Schriftgröße: 2em;Rand: 0,67em 0}mark{Hintergrund: #ff0;Farbe: #000}klein{Schriftgröße: 80 %}sub,sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline}sup{top: -0.5em}sub{bottom: -0.25em}img{border: 0}svg:not( :root){overflow: versteckt}figure{margin: 1em 40px}hr{box-sizing: content-box;height: 0}pre{overflow: auto}code,kbd,pre,samp{font-family: monospace, monospace ;font-size: 1em}button,input,optgroup,select,textarea{color: inherit;font: inherit;margin: 0}button{overflow: sichtbar}button,select{text-transform: none}button,html input[ type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance: button;cursor: pointer}button[disabled],html input[disabled]{cursor: default }button::-moz-focus-inner,input::-moz-focus-inner{border: 0;padding: 0}input{line-height: normal}input[type="checkbox"],input[type= "radio"]{box-sizing: border-box;padding: 0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer -spin-button{height: auto}input[type="search"]{-webkit-appearance: textfield;box-sizing: content-box}input[type="search"]::-webkit-search-cancel- button,input[type="search"]::-webkit-search-decoration{-webkit-appearance: none}fieldset{border: 1px solid #c0c0c0;margin: 0 2px;padding: 0.35em 0.625em 0.75em}legend {border: 0;padding: 0}textarea{overflow: auto}optgroup{font-weight: Bold}table{border-collapse: collaps;border-spacing: 0}td,th{padding: 0}*{box-sizing : border-box}input,select,textarea,button{font: 13px/1.4 Helvetica, arial, freesans, clean, sans-serif, „Segoe UI Emoji“, „Segoe UI Symbol“}body{min-width: 1020px; Schriftart: 13px/1.4 Helvetica, arial, freesans, clean, sans-serif, „Segoe UI Emoji“, „Segoe UI Symbol“;color: #333;background-color: #fff}a{color: #4183c4;text- Dekoration: keine}a:hover,a:active{text-decoration: underline}hr,.rule{height: 0;margin: 15px 0;overflow: versteckt;background: transparent;border: 0;border-bottom: 1px solid #ddd}hr:before,.rule:before{display: table;content: ""}hr:after,.rule:after{display: table;clear: Both;content: ""}h1,h2,h3,h4 ,h5,h6{margin-top: 15px;margin-bottom: 15px;line-height: 1.1}h1{font-size: 30px}h2{font-size: 21px}h3{font-size: 16px}h4{font -size: 14px}h5{font-size: 12px}h6{font-size: 11px}small{font-size: 90%}blockquote{margin: 0}.lead{margin-bottom: 30px;font-size: 20px ;font-weight: 300;color: #555}.text-muted{color: #999}.text-danger{color: #bd2c00}.text-emphasized{font-weight: Bold;color: #333}ul, ol{padding: 0;margin-top: 0;margin-bottom: 0}ol ol,ul ol{list-style-type: Lower-roman}ul ul ol,ul ol ol,ol ul ol,ol ol ol{ list-style-type: Lower-alpha}dd{margin-left: 0}tt,code{font-family: Consolas, „Liberation Mono“, Menlo, Courier, monospace;font-size: 12px}pre{margin-top : 0;margin-bottom: 0;font: 12px Consolas, „Liberation Mono“, Menlo, Courier, monospace}#realtime .status{overflow: sichtbar;position: absolut;oben: -5px;links: 0;hintergrund: url ("/public/images/github-status.png");width: 26px;height: 26px;display: block;margin: 0 5px 0 0}#realtime .up{background-position: 0 0}#realtime .problem {background-position: 0 -53px}#realtime .down{background-position: 0 -26px}.container{max-width: 920px;margin: 0 auto 20px auto}#header{background: #FAFAFA;background: -moz -linear-gradient(#FAFAFA, #EAEAEA);background: -webkit-linear-gradient(#FAFAFA, #EAEAEA);-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#fafafa', endColorstr ='#eaeaea')";border-bottom: 1px solid #CACACA;box-shadow: 0 1px 0 rgba(255, 255, 255, 0.4),0 0 10px rgba(0, 0, 0, 0.1)}# markup{padding: 3px}#markup Article{padding-top: 30px}.markdown-body{overflow: versteckt;font-family: „Helvetica Neue“, Helvetica, „Segoe UI“, Arial, freesans, sans-serif;font -size: 16px;line-height: 1.6;word-wrap: break-word}.markdown-body>*:first-child{margin-top: 0 !important}.markdown-body>*:last-child{margin -bottom: 0 !important}.markdown-body .absent{color: #c00}.markdown-body .anchor{position: absolute;top: 0;left: 0;display: block;padding-right: 6px;padding- left: 30px;margin-left: -30px}.markdown-body .anchor:focus{outline: none}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown -body h5,.markdown-body h6{position: relative;margin-top: 1em;margin-bottom: 16px;font-weight: Bold;line-height: 1.4}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link, .markdown-body h6 .octicon-link{display: none;color: #000;vertical-align: middle}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3 :hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{padding-left: 8px;margin-left: -30px;text- Dekoration: keine}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{display: inline-block}.markdown-body h1 tt ,.markdown-body h1-Code,.markdown-body h2 tt,.markdown-body h2-code,.markdown-body h3 tt,.markdown-body h3-code,.markdown-body h4 tt,.markdown-body h4-code, .markdown-body h5 tt,.markdown-body h5 code,.markdown-body h6 tt,.markdown-body h6 code{font-size: inherit}.markdown-body h1{padding-bottom: 0.3em;font-size : 2.25em;line-height: 1.2;border-bottom: 1px solid #eee}.markdown-body h1 .anchor{line-height: 1}.markdown-body h2{padding-bottom: 0.3em;font-size: 1.75em;line-height: 1.225;border-bottom: 1px solid #eee}.markdown-body h2 .anchor{line-height: 1}.markdown-body h3{font-size: 1.5em;line-height: 1.43 }.markdown-body h3 .anchor{line-height: 1.2}.markdown-body h4{font-size: 1.25em}.markdown-body h4 .anchor{line-height: 1.2}.markdown-body h5{font- size: 1em}.markdown-body h5 .anchor{line-height: 1.1}.markdown-body h6{font-size: 1em;color: #777}.markdown-body h6 .anchor{line-height: 1.1}. markdown-body p,.markdown-body blockquote,.markdown-body ul,.markdown-body ol,.markdown-body dl,.markdown-body table,.markdown-body pre{margin-top: 0;margin-bottom : 16px}.markdown-body hr{height: 4px;padding: 0;margin: 16px 0;background-color: #e7e7e7;border: 0 none}.markdown-body ul,.markdown-body ol{padding-left: 2em}.markdown-body ul.no-list,.markdown-body ol.no-list{padding: 0;list-style-type: none}.markdown-body ul ul,.markdown-body ul ol,.markdown -body ol ol,.markdown-body ol ul{margin-top: 0;margin-bottom: 0}.markdown-body li>p{margin-top: 16px}.markdown-body dl{padding: 0}.markdown -body dl dt{padding: 0;margin-top: 16px;font-size: 1em;font-style: italic;font-weight: Bold}.markdown-body dl dd{padding: 0 16px;margin-bottom: 16px }.markdown-body blockquote{padding: 0 15px;color: #777;border-left: 4px solid #ddd}.markdown-body blockquote>:first-child{margin-top: 0}.markdown-body blockquote>: last-child{margin-bottom: 0}.markdown-body table{display: block;width: 100%;overflow: auto;word-break: normal;word-break: keep-all}.markdown-body table th{ Schriftstärke: fett}.markdown-body table th,.markdown-body table td{padding: 6px 13px;border: 1px solid #ddd}.markdown-body table tr{background-color: #fff;border-top: 1px solid #ccc}.markdown-body table tr:nth-child(2n){background-color: #f8f8f8}.markdown-body img{max-width: 100%;box-sizing: border-box}.markdown- body span.frame{display: block;overflow: versteckt}.markdown-body span.frame>span{display: block;float: left;width: auto;padding: 7px;margin: 13px 0 0;overflow: versteckt;border : 1px solid #ddd}.markdown-body span.frame span img{display: block;float: left}.markdown-body span.frame span span{display: block;padding: 5px 0 0;clear: Both;color: #333}.markdown-body span.align-center{display: block;overflow: versteckt;clear: Both}.markdown-body span.align-center>span{display: block;margin: 13px auto 0;overflow: versteckt ;text-align: center}.markdown-body span.align-center span img{margin: 0 auto;text-align: center}.markdown-body span.align-right{display: block;overflow: versteckt;clear: Both}.markdown-body span.align-right>span{display: block;margin: 13px 0 0;overflow: versteckt;text-align: right}.markdown-body span.align-right span img{margin: 0; text-align: right}.markdown-body span.float-left{display: block;float: left;margin-right: 13px;overflow: versteckt}.markdown-body span.float-left span{margin: 13px 0 0 }.markdown-body span.float-right{display: block;float: right;margin-left: 13px;overflow: versteckt}.markdown-body span.float-right>span{display: block;margin: 13px auto 0 ;overflow: versteckt;text-align: right}.markdown-body code,.markdown-body tt{padding: 0;padding-top: 0.2em;padding-bottom: 0.2em;margin: 0;font-size: 85 %;background-color: rgba(0,0,0,0.04);border-radius: 3px}.markdown-body code:before,.markdown-body code:after,.markdown-body tt:before,.markdown- body tt:after{letter-spacing: -0.2em;content: " 0a0"}.markdown-body code br,.markdown-body tt br{display: none}.markdown-body del code{text-decoration: inherit} .markdown-body pre>code{padding: 0;margin: 0;font-size: 100%;word-break: normal;white-space: pre;background: transparent;border: 0}.markdown-body .highlight{ margin-bottom: 16px}.markdown-body .highlight pre,.markdown-body pre{padding: 16px;overflow: auto;font-size: 85%;line-height: 1,45;background-color: #f7f7f7;border-radius: 3px}.markdown -body .highlight pre{margin-bottom: 0;word-break: normal}.markdown-body pre{word-wrap: normal}.markdown-body pre code,.markdown-body pre tt{display: inline;max- Breite: anfänglich; Auffüllung: 0; Rand: 0; Überlauf: anfänglich; Zeilenhöhe: erben; Zeilenumbruch: normal; Hintergrundfarbe: transparent; Rand: 0}.markdown-body pre code:before,.markdown- body pre code:after,.markdown-body pre tt:before,.markdown-body pre tt:after{content: normal}.markdown-body kbd{display: inline-block;padding: 3px 5px;font-size: 11px ;Linienhöhe: 10px;Farbe: #555;vertikale Ausrichtung: Mitte;Hintergrundfarbe: #fcfcfc;Rahmen: einfarbig 1px #ccc;Rahmen-Unterseite-Farbe: #bbb;Rahmenradius: 3px;Box-Schatten : inset 0 -1px 0 #bbb}.codehilite{background: #ffffff}.codehilite .c{color: #999988;font-style: italic}.codehilite .err{color: #a61717;background-color: #e3d2d2} .codehilite .k{color: #000000;Schriftstärke: fett}.codehilite .o{farbe: #000000;Schriftstärke: fett}.codehilite .cm{farbe: #999988;Schriftart: kursiv}.codehilite .cp{color: #999999;Schriftstärke: fett}.codehilite .c1{farbe: #999988;Schriftstil: kursiv}.codehilite .cs{farbe: #999999;Schriftstärke: fett;Schriftstil: kursiv}.codehilite .gd{color: #000000;Hintergrundfarbe: #ffdddd}.codehilite .gd .x{color: #000000;Hintergrundfarbe: #ffaaaa}.codehilite .ge{color: #000000;font- Stil: kursiv}.codehilite .gr{Farbe: #aa0000}.codehilite .gh{Farbe: #999999}.codehilite .gi{Farbe: #000000;Hintergrundfarbe: #ddffdd}.codehilite .gi .x{Farbe: #000000;Hintergrundfarbe: #aaffaa}.codehilite .go{Farbe: #888888}.codehilite .gp{Farbe: #555555}.codehilite .gs{Schriftstärke: fett}.codehilite .gu{Farbe: #aaaaaa }.codehilite .gt{Farbe: #aa0000}.codehilite .kc{Farbe: #000000;Schriftstärke: fett}.codehilite .kd{Farbe: #000000;Schriftstärke: fett}.codehilite .kp{Farbe: #000000;Schriftstärke: fett}.codehilite .kr{Farbe: #000000;Schriftstärke: fett}.codehilite .kt{Farbe: #445588;Schriftstärke: fett}.codehilite .m{Farbe: #009999 }.codehilite .s{color: #d14}.codehilite .na{color: #008080}.codehilite .nb{color: #0086B3}.codehilite .nc{color: #445588;font-weight: Bold}.codehilite . nein{color: #008080}.codehilite .ni{color: #800080}.codehilite .ne{color: #990000;Schriftstärke: fett}.codehilite .nf{farbe: #990000;Schriftstärke: fett}. codehilite .nn{Farbe: #555555}.codehilite .nt{Farbe: #000080}.codehilite .nv{Farbe: #008080}.codehilite .ow{Farbe: #000000;Schriftstärke: fett}.codehilite .w{ Farbe: #bbbbbb}.codehilite .mf{Farbe: #009999}.codehilite .mh{Farbe: #009999}.codehilite .mi{Farbe: #009999}.codehilite .mo{Farbe: #009999}.codehilite .sb{ Farbe: #d14}.codehilite .sc{Farbe: #d14}.codehilite .sd{Farbe: #d14}.codehilite .s2{Farbe: #d14}.codehilite .se{Farbe: #d14}.codehilite .sh{ Farbe: #d14}.codehilite .si{Farbe: #d14}.codehilite .sx{Farbe: #d14}.codehilite .sr{Farbe: #009926}.codehilite .s1{Farbe: #d14}.codehilite .ss{ Farbe: #990073}.codehilite .bp{Farbe: #999999}.codehilite .vc{Farbe: #008080}.codehilite .vg{Farbe: #008080}.codehilite .vi{Farbe: #008080}.codehilite .il{ Farbe: #009999}

PHP程序员技能站


摘要:创业不息、折腾不止,今年跟朋友又折腾了一个新项目:Farbe公寓段时间alpha版本的开发, 对于PHP开发有一个全面而粗浅的了解.又因为面试需要,在这里做一下总结.


  • Blog: http://www.cnblogs.com/jhzhu
  • E-Mail: jhzhuustc@gmail.com
  • Autor: Zhimingso
  • Zeitpunkt: 14.05.2015

  • Vorne geschrieben
  • PHP-Grundlagen
  • PHP-Prinzipien
    • Designkonzept und Funktionen
    • PHP-Vierschichtsystem
  • MVC-Framework
  • OOP, Designmuster, Refactoring
  • Web Front-End-Kenntnisse
  • MySQL-Datenbankkenntnisse
  • Server-Setup
  • Zitat
  • Werbung

Schreiben Sie vorne

Wenn wir über PHP-Entwicklung sprechen, sprechen wir tatsächlich über eine Sammlung komplexer Technologien wie 网站, 数据库, 缓存, session, 负载均衡 usw. Daher ist die PHP-Skills-Station viel länger als üblich.

PHP-Grundlagen

Hier müssen Sie Folgendes wissen:

  1. Installieren Sie PHP auf jeder Plattform und verwenden Sie den integrierten Webserver von PHP, um „Hallo“ erfolgreich anzuzeigen PHP-Schnittstelle.
  2. PHP-funktionale Programmiersyntax, objektorientierte Syntax, Namespace.
  3. Vertrautheit mit der PHP-Standardbibliothek.
  4. Debugging-Tools: Zumindest müssen Sie wissen, wie man xdebug verwendet.
  5. Die Installation, Verwendung und Prinzipien von Tools zur Verwaltung von Abhängigkeitspaketen, die am häufigsten verwendeten: Composer, Pear.
  6. Grammatikleistung und -prinzip:
    1. Universelles Array. Verwendung, Implementierungsprinzipien und Vorsichtsmaßnahmen für die Verwendung. (Stichwort: Hash-Tabelle).
    2. Effizienz der String-Verkettung.
    3. Das Implementierungsprinzip schwacher Typen. (Schlüsselwort: zval)
  7. HTTP-Protokoll, Get/Post-Anfrage ist anders.

PHP-Prinzipien

Designkonzept und Funktionen

  1. Multithreading-Modell, Unabhängigkeit anfordern.
  2. Schwach getippte Sprache.
  3. Kompositionsmodus der Engine-Komponente (Zend) (ext).

PHP-Vierschichtsystem

  1. Zend-Engine: Zend ist vollständig in reinem C implementiert und ist der Kernbestandteil von PHP. Es übersetzt PHP-Code (lexikalische, grammatikalische Analyse). , usw.) Der Serienkompilierungsprozess verarbeitet ausführbare Opcodes und implementiert entsprechende Verarbeitungsmethoden, implementiert grundlegende Datenstrukturen (wie Hashtable, oo), Speicherzuweisung und -verwaltung und stellt entsprechende API-Methoden für externe Aufrufe bereit. Dies ist der Kern von allem . Alle Peripheriefunktionen sind rund um Zend implementiert.
  2. Erweiterungen: Erweiterungen basieren auf der Zend-Engine und bieten verschiedene grundlegende Dienste auf Komponentenbasis. Unsere gemeinsamen verschiedenen integrierten Funktionen (z. B. Array-Serien), Standardbibliotheken usw. werden alle durch Erweiterungen implementiert . Benutzer können bei Bedarf auch eigene Erweiterungen implementieren, um Funktionserweiterungen, Leistungsoptimierungen und andere Zwecke zu erreichen (z. B. sind die PHP-Mittelschicht und die Rich-Text-Analyse, die derzeit von Tieba verwendet werden, typische Erweiterungsanwendungen).
  3. Sapi: Der vollständige Name von Sapi ist Server Application Programming Interface. Dabei handelt es sich um die Server-Anwendungsprogrammierschnittstelle, die es PHP ermöglicht, über eine Reihe von Hook-Funktionen mit Peripheriedaten zu interagieren Durch Sapi wird PHP selbst erfolgreich von Anwendungen der oberen Ebene entkoppelt und isoliert. PHP kann nicht mehr berücksichtigen, wie es mit verschiedenen Anwendungen kompatibel ist, und die Anwendung selbst kann auch unterschiedliche Verarbeitungsmethoden entsprechend ihren eigenen Eigenschaften implementieren.
  4. Anwendung der oberen Ebene: Dies ist das PHP-Programm, das wir normalerweise schreiben. Wir erhalten verschiedene Anwendungsmodi über verschiedene Sapi-Methoden, z. B. die Implementierung von Webanwendungen über einen Webserver, deren Ausführung im Skriptmodus auf der Befehlszeile usw.

MVC-Framework

  1. MVC-Theorie.
  2. PHP-Vorlage.
  3. Gängige Open-Source-MVC-Frameworks, mindestens eines davon wurde eingehend untersucht.

OOP, Design Patterns, Refactoring

  1. Grundlagen der objektorientierten Programmierung: Vererbung, Kapselung, Polymorphismus.
  2. Gemeinsame Entwurfsmuster und Anwendungsszenarien. Referenz
  3. Haben Sie ein ausgeprägtes Gespür für schlechte Gerüche im Code und beherrschen Sie grundlegende Refactoring-Methoden.

Web-Frontend-Kenntnisse

  1. HTML/CSS/JavaScript-Grundlagen.
  2. Cache-, Cookie-, Sitzungsprinzipien und Verwendung.

MySQL-Datenbankkenntnisse

  1. MySQL-Installation und -Konfiguration
  2. MySQL-Grundsyntax hinzufügen, löschen, ändern und überprüfen
  3. Datenbankdesignprinzipien und gängige Techniken
  4. MySQL-Leistungsdiagnose und -optimierung
  5. Verteiltes Datenbankdesign, Datenbanksicherung und -wiederherstellung

Server-Setup

  1. Linux allgemein Befehle.
  2. Rationelle Nutzung von DNS, CDN, Cache, Bandbreite und anderen Ressourcen.
  3. nginx, Apache Installation und Konfiguration.
  4. Der Aufbau des Bilderbettes. (Stichwort: EvaCloudImage)

Zitat

  1. PHP The Right Way
  2. Der zugrunde liegende Betriebsmechanismus und das Prinzip von PHP
  3. Eine Baseline für Front-End-Entwickler
  4. Code-Refactoring
  5. Wie läuft eine vollständige HTTP-Transaktion ab?

Werbespot

Okay, hier ist die Werbeunterbrechung:

[Color International Youth Apartment] ist das Flaggschiffprojekt von Maimang Assets, einem O2O-Projekt für den Mietmarkt. Vereinfacht ausgedrückt: Die vorhandenen Mietobjekte werden einheitlich gebündelt und dann an Kunden untervermietet und einheitlich und standardisiert verwaltet. Anschließend werden die natürlichen Verkehrsvorteile der Mieter genutzt, um einen reichhaltigeren geschlossenen O2O-Lebenskreislauf zu schaffen . Zielgruppe sind junge Menschen mit mittlerem Einkommen und darüber.
Unser Gründungsteam besteht aus erstklassigen Unternehmen wie Alibaba, Yahoo!, Perfect World, Meizu usw. Zu uns stoßen auch Offline-Talente mit mehr als 10 Jahren Erfahrung in Immobilienagenturen. Die Kerngründer haben viele Male ihr eigenes Unternehmen gegründet.
Umfangreiche unternehmerische Erfahrung und zig Millionen Angel-Finanzierungen bieten eine stärkere Garantie für Ihre Zukunft!
Solange Sie mit unserer Kultur einverstanden sind und davon überzeugt sind, dass Sie besser sind als ich, senden Sie uns einfach Ihren Lebenslauf: hr@color520.com. Das Gehalt wird auf jeden Fall besser sein als bei BAT. Einzelheiten finden Sie unter: Color International Youth Apartment

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!