カテゴリー : 2013年 8月2日

論理演算子

演算子 名前 結果
and 論理積 $a and $b $aと$bが共にTRUEのときはTRUE
or 論理和 $a or $b $aまたは$bのどちらかがTRUEのときはTRUE
xor 排他的論理和 $a xor$b 両方の結果が異なればTRUE(どちらかがTRUEでどちらかがFALSE)
! 否定 !$a $aがTRUEでないときはTRUE
&& 論理積 $a && $b $aと$bが共にTRUEのときはTRUE
|| 論理和 $a || $b $aまたは$bのどちらかがTRUEのときはTRUE

例1

例2

* gettype()関数は変数のデータ型を調べられます。

例3

演算子には優先順位があります → PHPマニュアル

例3の場合、論理和(||)と論理積(&&)をそれぞれ評価した後に論理積での評価をしたいので、それぞにれ括弧をつけています。

IF練習問題2

問題1

  • $yearという変数をつくり 西暦を代入してください (例 $year = 2013)
  • 閏年を判定するプログラムを作成してください。
    • うるう年は、4年に1回ありますが、100で割り切れる年はうるう年ではありません。また400で割り切れる年はうるう年になります。

問題2

  • 現在時刻にあわせてやる気のでるメッセージを出力(例:もうすぐランチ!がんばれ!)。
    • xamppのタイムゾーンを日本にあわせる
      • C:\xampp\php\php.ini の中のdate.timezone を探して、値を date.timezone = Asia/Tokyo に変更してからapach再起動してください。
    • 時刻を取得する関数は date(” H:i:s”)関数

 

if練習問題 パンくずリストをつくろう!

見本→

パンくずリストを作りましょう!!

  • 以前制作したnuv_list.phpから配列部分を抜き出して、nuv_array.phpを作っておくと、URLのパスが複数箇所で使用できるので便利です。
  • breadcrumb.phpを作成してheader.phpに読み込ませておくとファイルの可読性や保守性に有利です。
  • インクルードさせるには、複数回使用しますし、インクルード元で処理がエラー起きたときに処理をとめてほしいので、requireを使うとよいでしょう。
  • 現在アクセスしているURLを取得するには$_SERVER["REQUEST_URI"]を使うと取得できます。

 

要件

  • 現在閲覧しているページに対してはパンくずのリンクを生成しない。
  • TOPページからスタートする階層表現とする。(フォルダ内の階層はindedxもfirstもsecondも並列でかまいません)

break

breakは、現在実行中の for, foreach, while, do-while, switch 構造の実行を終了します。

制御練習問題

問題1 => 以下をphpで作成してください。
ヒント:連想配列
foreach文 foreach(配列 as $key => $value){ 繰り返し処理 }

イチゴ:300円
バナナ:100円
オレンジ:200円
マンゴー:500円

問題 2 => 1から50までの数字を表示させてください。
 ただし、3の倍数のみ「aho」と表示させてください。

1 2 aho 4 5 aho 7 8 aho 10 11 aho 13 14 aho 16 17 aho・・・
こんな感じで!

PHPマニュアルの関数リファレンスの読み方

PHPにはいろんな関数があります。それを調べるのに便利なPHPマニュアルというものが存在します。

ここには、PHPの関数の使い方説明が書いてあります。

たとえば

explode

という関数を調べた場合 →リンク

 

array explode ( string $delimiter , string $string [, int $limit ] )
文字列の配列を返します。この配列の各要素は、 string を文字列 delimiter で区切った部分文字列となります。

と書かれています。

この読み方を理解すると、関数リファレンスを読むことが楽になりますよ。

たとえば、上の例だと

  • array === 配列の戻り値を返します。
  • explode === 関数の名前
  • string $delimiter === 第一引数はデリミタを渡してください。
  • string $string  === 第2引数は、文字列を渡してください。
  •  [, int $limit] === 大カッコで囲われている物は、オプションです。今の場合は整数の数字を渡してください。

というように、関数の戻り値のデータ型と引数のデータ型などが記載されています。

こことかここを参考にわかる関数でもPHPマニュアルを見て読み方を理解してください。