PHP– category –
-
PHP
PHP:if文でブーリアンを返す場合、ifで複数の条件(and繋ぎ)を書くときにelse falseもカットできるケース
学校がある場合はtrueを返す関数となってる。受け取る値は二つで、ひとつ目は曜日。二つ目は祝日か否かのブーリアン。祝日ならtrue。日曜と土曜と祝日は学校がないのでfalseにしないといけない。これは先頭return型で、一行にまとめられたケース。 functio... -
PHP
PHP:if-elseif-else文は条件式の順序に気をつけないと破綻する
以下のケースの場合なら、81で割って余りがないものは先に処理してtrueにしてしまい、次に9で割って余りがないものはfalseにしてしまい、最後に3で割って余りがないものをtrueにする。この順序を変えると漏れが起こる。 function funcname(int $num): bool... -
PHP
PHP:if文if-else型ならば(elseifがない)文字列を返す場合でも、三項演算子を使って「if」すら書かないreturnからの超短縮記述が使える
function funcname(int $height, int $width): string{ // ↓ ブーリアンでなく文字列であっても三項演算子を使うことによって「return」から開始する超短縮記述ができる。 return $aaa>= $bbb ? "aaa big" : "bbb big"; /* ↓ 普通... -
PHP
PHP:if文でブーリアンを返す場合、falseを書かなくても良いケース
return ~ ; だけで済む書き方。ついつい「return $aaa !== $bbb ? true : false;」などと false まで書いてしまう。 function funcname(bool $aaa, bool $bbb): bool{ // ↓ if-else文で書けて、if領域が一行で書けるため、「return 何々」のみの超短文が... -
PHP
PHP:代入演算子( += など)や連結演算子 (.= 文字列連結)は、変数に入れていないと機能しない
// 代入演算子や連結の演算子は、数字や文字列が変数に入れられていないと機能しない。 echo "abc" .= "def" . PHP_EOL; // エラーになる // このように、一度変数に入れて、その変数を使っておこなわねばならないことに注意。 $test ... -
PHP
PHP:関数の戻り値がブーリアン型の場合、if文のカッコ内を変数名だけにできる場合がある
以下の「$checktime」 は true または false のブーリアン値。ブーリアン値を返す式は「述語」なので、$checktime 自体を「述語」として扱うことが可能。つまり 「if($checktime == true)」 と記述する必要はない。初心者にありがちなので注意。 function ... -
PHP
PHP:定数:コード内で値が変わらないものに付与
コード内で今後値が変わらない変数に対しては、定数を割り当てるようにする。 $taxrate = 0.1; // 現在のの消費税・・・実際の消費税率はDBに値を登録して運用するだろうがこれは例え $maintainanceFee = 3000; -
PHP
PHP:ブーリアンを返す場合に条件が揃えば、if 文の「if」すら省略できる書き方
関数の戻り値がブーリアン型の場合、if 文を省略できる場合がある。述語はブーリアン型を返すことから if 文を使わずにそのまま return としても問題ない。 function funcname($num){ // ブーリアン型なのでこのような極端な省略ができる。 // ifの場合の... -
PHP
PHP:if文の一行書きタイプ
{} が 1 行しかない場合、省略して表記することもできる。 function funcname($country) { if ($country == "Japan") return "ja"; else if ($country == "Flance") return "fl"; else if ($country == "Kor... -
PHP
PHP:関数(function)の記述で変数周りの正しい書き方
変数の型を指定すべき。型の指定をせずとも動作するようだが、オブジェクト指向を書く場合は型の指定をせねばならず、それを踏まえた記述に慣れておく必要がある。時代の趨勢はオブジェクト指向であり、無視することはできない。以下、記入例。funciton内...