開発ページ > コーディング規約 > コーディングスタイル
コーディングスタイル
文字列
文字列リテラル
文字列がリテラルの場合、シングルクォート「 ' 」で文字を囲む。
$abc = 'abc';
シングルクォートを含む文字列リテラル
リテラル文字自体にシングルクォートを含む場合は、ダブルクォート「 "」で文字を囲む。(SQLなど)
$sql = "SELECT 'name' , 'id' FROM 'people' " . "WHERE 'name'='abc' OR 'name'='def'";
変数の展開
変数の展開を行う方法は、波括弧「 { } 」で囲う方法を使用すること。
$abc = "こんにちは{$name}さん。";
文字列の連結
文字列の連結は、ピリオド「 . 」を使用すること。前後にスペースを入れ、コードを読みやすくすること。
$abc = 'abc' . '-' . 'def';
複数行に分ける場合、2行目以降の行頭にスペースを入れ「 = 」と、「 . 」を合わせる。
$sql = "SELECT 'name' , 'id' FROM 'people' " . "WHERE 'name'='abc' OR 'name'='def'";
配列
配列の添え字は0スタートとするように心がけること。
配列宣言する場合は、要素を区切るカンマの後にスペースを入れること。
最後の要素の後ろにカンマをつけないこと。
$sampleArray = array(1, 2, 3, 'abc', 'def');
複数行にまたがる場合、2行目以降の行頭にスペースを入れ、最初の要素の開始位置と合わせる。
$sampleArray = array(1, 2, 3, 'abc', 'def', $a, $b, $c, 1.05, $d, 100 );
最初の要素を2行目から開始する方法は、基本的には使用しない。
使用する場合は、下記方法のように読みやすいコーディングとすること。
$sampleArray = array( 1, 2, 3, 'abc', 'def', $a, $b, $c, 1.05, $d, 100 );
読みやすいコーディングとするため、多次元配列、配列の配列の使用は控えること。
連想配列
連想配列を宣言する場合、キーと値の位置を揃えること。
最後の要素の後ろにカンマをつけないこと。
$sampleArray = array('key1' = 'value1', 'key2' = 'value2', 'key777' = 'value777' );
最初の要素を2行目から開始する方法は、基本的には使用しない。
使用する場合は、下記方法のように読みやすいコーディングとすること。
$sampleArray = array( 'key1' = 'value1', 'key2' = 'value2', 'key777' = 'value777' );
クラス
クラス宣言
開始波括弧は常にクラス名の下に書くこと。
クラス内のコードは、クラス宣言より一段下げること。
ドキュメントブロックを書くかどうかは自由とする。
/** * ドキュメントブロック */ class SampleClass { //クラスの内容 }
他のクラスを継承、インターフェースを実装しているクラスの宣言は、同じ行に含めるようにすること。
class SampleClass extends Abc implements Def { }
同じ行に含める事が難しい場合は、改行し一段下げる。
class SampleClass extends Abc implements Def { }
複数のインターフェースを実装している場合は、インターフェースを区切るカンマの後で改行すること。
class SampleClass implements Abc, Def { }
メンバ変数
クラス内部で使用する変数はクラスの先頭で宣言すること。
private , protected , publicのアクセス修飾子を用いてアクセス範囲を指定すること。
public宣言をして外部からアクセスさせることはせず、アクセサメソッドを使用すること。
関数・メソッド
関数・メソッドの定義
引数を指定する場合は、引数を区切るカンマの後にスペースをいれること。
開始波括弧は常に関数名の下に書くこと。
関数内のコードは関数宣言より一段下げること。
戻り値を括弧で囲まないこと。
function abc($aaa, $bbb, $ccc) { //関数の内容 return $ddd; }
引数が多く、同じ行に含める事が出来ない場合は改行し、下記のように読みやすいコーディングとすること。
function abc($aaa, $bbb, $ccc $ddd, $eee, $fff) { //関数の内容 }
クラス内でメソッドを宣言する場合は、private , protected , publicのアクセス修飾子を用いてアクセス範囲を指定すること。
class SampleClass { public function abc() { //メソッドの内容 } }
関数・メソッドの使用方法
引数を指定する場合は、引数を区切るカンマの後にスペースをいれること。
引数に配列を含む場合や、複数行にまたがるケースは、読みやすいコーディングとなるようにすること。
abc($aaa, $bbb, $ccc); abc($aaa, $bbb, $ccc, array($ddd, $eee, $fff, $ggg, $hhh, $iii ), $jjj);
条件分岐
if文
どんなに単純な条件であっても、波括弧を省略する形式でのコーディングを許さない。
開始波括弧は改行し、条件指定の次の行に記述すること。
終了波括弧も常に改行し、単独で記述すること。
if文の中身は一段下げて処理の記述を行う。
if($a == 1) { $a = $a + 1; }
elseがある場合、ifの終了波括弧で改行し、次の行に記述すること。
elseの開始波括弧はifと同様に改行し、
次の行に記述すること。終了波括弧も同様。
if($a == 1) { $a = $a + 1; } else { $a = $a - 1; }
elseifの場合も同様。
if($a == 1) { $a = $a + 1; } elseif($a == 2) { $a = $a - 1; } else { $a = $a * 2; }
条件が複雑な場合、改行してもかまわないが、読みやすいコーディングを心がけること。
if(($a == 1 && $b == 2) || $c == 3 ) { $a = $a + 1; }
switch文
開始波括弧は改行し、条件を指定する括弧の次の行に記述すること。
終了波括弧も常に改行し、単独で記述すること。
switch文の中身は一段下げ、各case文の中身もさらに一段下げて記述すること。
defaultを省略することは許さない。
caseの最後にbreak;、return;をしない場合は、理由をコメントで記述すること。
switch($abc) { case 1: break; case 2: break; default: break; }
繰り返し
for文
開始波括弧は改行し、for文の次の行に記述すること。
終了波括弧は改行し、単独で記述すること。
for文の中身は一段下げて記述を行う。
for($a = 0; $a < 10; $a++) { echo $a; }
while文
開始波括弧は改行し、while文の次の行に記述すること。
終了波括弧は改行し、単独で記述すること。
while文の中身は一段下げて記述を行う。
$a = 0; while($a < 10) { $a++; }
do while文
出来る限り使用を控えること。
開始波括弧は改行し、do文の次の行に記述すること。
終了波括弧は改行し、単独で記述すること。
do while文の中身は一段下げて記述を行う。
do { $a++; } while($a < 10)
foreach文
開始波括弧は改行し、foreach文の次の行に記述すること。
終了波括弧は改行し、単独で記述すること。
foreach文の中身は一段下げて記述を行う。
foreach($sampleArray as $value) { echo $value; }