### 1.1、PHP書寫格式的兩種方式
~~~
<?php ?>
<?= ?>
~~~
注:php文件必須使用`<?php ?>`開頭結尾 `<?= >`不建議在開發文件中使用
* * * * *
### 1.2、PHP方法和類的命名
> 介:php采用駝峰命名法 一共有兩種駝峰命名方法
>一種是開頭大寫StudlyCaps
> 一種是開頭小寫getStyle
說明:
類名我們采用開頭大寫的命名方法第一種
方法名我們采用開頭小寫的命名方法第二種
列子:
~~~
<?php
class AddressController {
//方法名
public function getMenu {
echo ‘getMoney’;
}
//方法名
public function remove() {
}
}
?>
~~~
注:單一的方法名使用全小寫,有動詞或多次的方法名使用開頭小寫的命名方法
* * * * *
### 1.3、PHP兩種書寫風格
1.以下是一個控制器的列子
~~~
<?php
namespace Manage\Controller;
use Common\Controller\BaseController;
use Think\Auth;
class ComController extends BaseController
{
public $USER;
public function _initialize()
{
}
}
~~~
注:類名方法名花括號換行書寫
2.另一種的書寫方式
~~~
<?php
namespace Manage\Controller;
use Common\Controller\BaseController;
use Think\Auth;
class ComController extends BaseController {
public $USER;
public function _initialize() {
}
}
~~~
注:類名和方法名后面空一格書寫花括號
* * * * *
### 1.4、常量,變量的命名
常量命名列子
~~~
<?php
namespace Vendor\Model;
class Foo
{
const VERSION = '1.0';
const DATE_APPROVED = '2012-06-01';
}
~~~
變量命名方式
一種是開頭大寫駝峰命名方法$GetMoney
一種是開頭小寫駝峰命名方法$getMoney
一種是下劃線命名方法 $get_money
注:變量名命名可以采用名詞,或者動賓組合。
* * * * *
### 1.5、類的空間命名
列子:
~~~
<?php
namespace Manage\Controller;
use Common\Controller\BaseController;
use Think\Auth;
~~~
注:namespace 后使用use時換行空一行書寫use
* * * * *
### 1.6、類的擴展與繼承
關鍵詞 extends 和 implements 必須 寫在類名稱的同一行
列:
~~~
<?php
namespace Vendor\Package;
use FooClass;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;
class ClassName extends ParentClass implements \ArrayAccess, \Countable
{
// 這里面是常量、屬性、類方法
}
~~~
implements 的繼承列表也 可以 分成多行
列:
~~~
class ClassName extends ParentClass implements
\ArrayAccess,
\Countable,
\Serializable{
// 這里面是常量、屬性、類方法
}
~~~
* * * * *
### 1.7、類的屬性命名
每個屬性都 必須 添加訪問修飾符。
一定不可 使用關鍵字 var 聲明一個屬性。
每條語句 一定不可 定義超過一個屬性。
不該 使用下劃線作為前綴,來區分屬性是 protected 或 private。
~~~
<?php
namespace Vendor\Package;
class ClassName
{
public $foo = null;
}
~~~
* * * * *
### 1.8、類的方法命名列子
~~~
<?php
namespace Vendor\Package;
class ClassName
{
public function fooBarBaz($arg1, &$arg2, $arg3 = [])
{
// method body
}
}
~~~
* * * * *
### 1.9、類的方法屬性
~~~
<?php
namespace Vendor\Package;
class ClassName
{
public function fooBarBaz($arg1, &$arg2, $arg3 = [])
{
// method body
}
}
~~~
注:方法中的屬性書寫是從第二個屬性開始,每個屬性前面空一格書寫屬性。方法中的屬性實際可以當做get來使用,可以省去一些獲取方式