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

関数練習問題(文字列関数)

下記の問題を解いてください。

  1. 有限会社タイテック・4Standard・C_room 左記の文字列から有限会社タイテックと4StandardとC_roomをそれぞれ別の変数に格納してください。 →ヒント mb_substr()
  2. 有限会社タイテック・4Standard・C_room 左記の文字列からC_roomをA_roomに置換してください。 → ヒント str_replace()
    1. できる方は、オプションの引数&cntを渡して、何個置換したかを表示してください。
  3. http://127.0.0.1/php_p/second.php 左記のURLの文字列を / を区切り文字として、配列型の変数に格納してください。→ ヒント explode()
    1. できる方はArray ( [0] => http: [1] => [2] => 127.0.0.1 [3] => php_p/second.php ) このような実行結果になるようにしてください。
  4. 2013  , 8 ,5という3つの文字列をそれぞれ変数に格納した後、2013年08月05日という文字列に整形してください。→ヒント printf()
  5. さっぽろしシロイシクキタゴウ3ジョウ5チョウメ という文字列があります。 全て半角カナになるように変換してください →ヒント mb_convert_kana()
  6. 問題5で回答した文字列をEUC_JPに変換してください→ ヒント mb_convert_encoding() これの実行結果の確認は、ブラウザのエンコーディング設定を変更してください。
  7. $year = 2013  $month = 8; $day = 5; の3つの変数と IF文判定用の配列型変数 $lang=arrey(en,ja); $kana(zenkaku,hankaku); があります 以下の問題はこれを利用します。
    •  $lang[0]、$kana[0]の場合は
      • AUG 05 2013 と全角表示
    •   $lang[1]、$kana[0]の場合は
      • 2013年 5月 13日 と全角表示
    •  $lang[0]、$kana[1]の場合は
      • AUG 05 2013 と半角表示
    • $lang[1]、$kana[1]の場合は
      • 2013年 5月 13日 と半角表示
    • となるようなプログラムを作成してください →printf() , mb_convert_kana(), 他にも使ええる関数あるかもしれませんので、工夫してください。

関数練習問題(配列)

  1. $data_1 = array(“PHP”,”図書館”,”のサンプルです”); $data_2 = array(“配列”,”同士を”,”結合します”);  という二つの配列型変数があります。これを結合して、ひとつの文字列にしてください。 ヒント → array_merge() , implode()
  2. 以前使用した$_SERVER[‘REQUEST_URI‘]で取得した文字列を文字列をexplode()関数で/で区切りファイル名のみを取得してください。 ヒント→array_slice()
  3. $data = (array(‘tenis’,'swimming’,'soccer’,'baseball)); という配列型の変数があります。 配列の要素をABC順で並び変えてください。実行結果 Array ( [0] => baseball [1] => soccer [2] => swimming [3] => tenis ) →ヒント sort()

サンプルファイル(メール送信プログラム)

サンプルファイルをダウンロードしてください。→sendding

このプログラムはフォームからの受け渡し。メール送信のプログラムが記述されています。

  • ここでは、データの受け渡しの基本的な部分を学習します。
  • サンプルファイルの必要な部分(BODY内の部分)のみを現在練習しているサイトに流用してください。(お問い合わせページを作成してください)inquiry.htmlもPHPファイルにしておくこと
  • →見本

メール送信プログラム解説

各ファイルのPOINT

inquiry.html(phpファイルに変更してください。)

action=”データの送信先” method=”送信方法”

name=”データの識別名”

check_inquiry.php

htmlspecialchars()  … サニタイズ →PHPマニュアル

ENT_QUOTES …. htmlspecialchars()の第二引数 シングルクォートをエスケープさせる

$_POST[''] … POSTメソッドで受け取ったデータの受け取り []の中は送信元でのname属性値

type=”hidden” 隠しデータとして扱う。

nl2br() … 改行部分にBRを埋め込む

send_inquiry.php

mb_encode_mimeheader() …MIMEヘッダの文字列をエンコードする

mb_send_mail() … メール送信関数 →PHPマニュアル

  • 成功した場合はtrueを返します。失敗した場合はfalseを返します。