Wenn Sie ein exzellenter Programmierer sein wollen, sind gute Codierungsstandards sehr wichtig. Wie können Sie also guten Code schreiben? In diesem Artikel geben wir Ihnen einige PHP-Codierungsstandards und Vorschläge.
PHP-Codedateien müssen mit dem
<?php //开头 // 不结尾
PHP-Codedateien müssen in UTF-8 ohne BOM codiert werden.
例sublime, setting增加,"show_encoding" : true
Die Anzahl der Zeichen pro Zeile sollte 80 Zeichen nicht überschreiten
例,sublime "word_wrap": "true", "wrap_width": 80,
Taste 4 Leerzeichen antippen
例,sublime "tab_size": 4,
Der PHP-Code sollte Definieren Sie nur Klassen (Merkmale)/Funktionen/Konstanten/andere Vorgänge, die Nebenwirkungen erzeugen (z. B. das Generieren einer Dateiausgabe und das Ändern von .ini-Konfigurationsdateien usw.), und Sie können nur eine auswählen.
例, a.php class A { } b.php function demo() { } c.php define('A', value); d.php ini_set('some_vars', value);
Die Benennung von Klassen/Eigenschaften/Schnittstellen muss der Namenskonvention von StudlyCaps folgen, beginnend mit einem Großbuchstaben.
class StudlyCaps { } trait StudlyCaps { } Interface StudlyCaps { }
Konstanten in einer Klasse müssen großgeschrieben und durch Unterstriche getrennt werden.
define('FOO_BAR', 'something more'); const FOO_BAR = value;
Der Name der Methode (in Klasse/Merkmal) muss der Namenskonvention für Groß- und Kleinschreibung im CamelCase-Stil entsprechen mit Kleinbuchstaben.
class StudlyCaps { public function studlyCaps() { // coding... } }
Funktionsnamen müssen der Namenskonvention für Unterstriche im Snake_case-Stil entsprechen.
function snake_case() { // coding... }
Private (private) Methodennamen (in Klasse/Merkmal) müssen der Namenskonvention im _camelCase-Stil mit führenden Unterstrichen und Kleinbuchstaben entsprechen Beginnend mit dem Kamelfall.
class StudlyCaps { private function _studlyCaps() { // coding... } }
Das erste Wort des Methodennamens ist ein Verb.
class StudlyCaps { public function doSomething() { // coding... } }
Variablen müssen der Namenskonvention im CamelCase-Stil entsprechen, bei der mit Kleinbuchstaben begonnen wird.
class StudlyCaps { public function doSomething() { $someVariable = 'demo'; // coding... } }
Wenn eine Methode/Funktion mehrere Parameter hat, muss zwischen
class StudlyCaps { public function doSomething($variableOne, $variableTwo) { // coding... } }
$a = $b + $c; $a = $b . $c;
namespace Standard; // 空一行 use Test\TestClass;//use引入类 // 空一行
class StudlyCaps { }
class StudlyCaps { public function studlyCaps() { // coding... } } function snake_case() { // coding... }
abstract class StudlyCaps { abstract public function studlyCaps(); final public static function studlyCapsOne() { } }
if ($valueOne === $valueTwo) { // code... } switch ($valueThree) { case 'value': // code... break; default: // code... break; } do { // code... } while ($valueFour <= 10); while ($valueFive <= 10) { // code... } for ($i = 0; $i < $valueSix; $i++) { // code... } $demo = new Demo() $demo->doSomething(); do_something(); </p> <p></p> <ul class=" list-paddingleft-2"><li>Die öffnende Klammer { der Kontrollstruktur muss in derselben Zeile wie die Deklaration und die schließende Klammer geschrieben werden } muss in einer eigenen Zeile nach dem Hauptteil geschrieben werden. <p></p> </li></ul> <pre class="brush:php;toolbar:false">if ($valueOne === $valueTwo) { // code... } switch ($valueThree) { case 'value': // code... break; default: // code... break; } do { // code... } while ($valueFour <= 10); while ($valueFive <= 10) { // code... } for ($i = 0; $i < $valueSix; $i++) { // code... }
if ($valueOne === $valueTwo) {// 控制结构(右边和)左边不加空格 // code... }
// heredoc语法 $sql = <<<SQL SELECT delivery_id FROM d_test WHERE delivery_id IN (123,234) GROUP BY delivery_id HAVING SUM(send_number) <= 0; SQL;
if ($a > 0 && $b > 0 && $c > 0 && $d > 0 && $e > 0) { }
public function tooLangFunction( $valueOne = '', $valueTwo = '', $valueThree = '', $valueFour = '', $valueFive = '', $valueSix = '') { //coding... }
$this->nameTest->functionOne() ->functionTwo() ->functionThree();
$a = [ 'aaa' => 'aaa', 'bbb' => 'bbb' ];
$str = 'str'; $arg = "$str";
/** * 类描述 * * desc */ class StandardExample { /** * 常量描述. * * @var string */ const THIS_IS_A_CONST = ''; /** * 属性描述. * * @var string */ public $nameTest = ''; /** * 构造函数. * * 构造函数描述 * @author name <email> * @param string $value 形参名称/描述 * @return 返回值类型 返回值描述 * 返回值类型:string,array,object,mixed(多种,不确定的),void(无返回值) */ public function __construct($value = '') { // coding... }
/** * 成员方法名称. * * 成员方法描述 * * @param string $value 形参名称/描述 * * @example domain/api/controller/action?argu1=111&argu2=222 */ public function testFunction($value = '') { // code... }
try { // coding... } catch (\Exception $e) { // coding... }
// 改写doSome为doSomething class StandardExample { /** * 方法列表 * * @var array */ private $_functionList = []; public function __construct($functionList = array()) { $this->_functionList = $value; } public function doSome() { $this->functionOne(); $this->functionTwo(); $this->functionThree(); $this->functionFour(); } public function doSomething() { foreach($this->_functionList as $function) { $this->$function(); } } ... }
// +---------------------------------------------------------------------- // | Company Name xx服务 // +---------------------------------------------------------------------- // | Copyright (c) 2017 http://domain All rights reserved. // +---------------------------------------------------------------------- // | Author: name <email> // +----------------------------------------------------------------------
以上内容就给新手程序员的一些编写代码的规范及建议,希望能帮助到大家。
相关推荐:
Das obige ist der detaillierte Inhalt vonPHP-Codierungsstandards und Vorschläge für Neulinge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!