Webサイト制作科 - 作品紹介

Webサイト制作科 - 作品紹介

文字列関数

PHP関数の使い方

  • 関数を使うイメージはExcelPHPも同じ


Excelの場合》

  • 四捨五入したい→ round関数を使う
  • 文字列の一部を抽出したい→ mid関数を使う


PHPの場合》

  • 四捨五入したい→ round関数を使う
  • 文字列の一部を抽出したい→ substr関数を使う
パラメータ
  • 関数に対して指定する値は「パラメータ」、関数から受け取る値は「戻り値」と呼ぶ
  • パラメータと引数は厳密には異なりますが、便宜上どちらも関数に渡される情報として「パラメータ」として表現します

関数の呼び出し方

  • 数値を四捨五入する
<?php
  //「123.456」を小数点以下第1位で四捨五入する
  $a =  round(123.456, 1);
  echo $a;
?>



PHP関数の調べ方



  • PHPマニュアルのダウンロード


「文字列関数」で、文字列を抜き取る

  • 例:メールアドレスからドメイン名を取り出す
X文字目以降を抽出する関数
  • 「@」が現れる次の文字からドメイン名が始まると考える
  • メールアドレスの何文字目に「@」が含まれるか調べる関数
  • メールアドレスのX文字目から後の文字列を取り出す関数

メールアドレスからドメイン名を取得する流れ

  1. メールアドレスから「@」を探す:strpos関数
  2. 「@」の位置を変数に格納する
  3. その位置から後の文字列を取得する:substr関数
strpos関数
  • 文字列から指定された「@」を探す
  • 見つかった位置を示す数値を返す
  • 数値は「0」から始まる



※つまり「4文字目」

substr関数
  • 文字列の一部を抽出する関数
<?php
echo substr('abc@defg.com', 4);
?>



  • 4文字分取得するには
<?php
echo substr('abc@defg.com', 4, 4);
?>

php.iniを編集

  • XAMPP(MAMP)内の「php.ini」を検索する
  • 「default_charset」と記述されている場所を検索する


  • 以下のように編集する


保存をし、サーバーを再起動することでプレビュー文字化けは解消されます。

日本語を処理したい場合
  • 名前が「mb」で始まるマルチバイト関数を使う
  • 例:住所から市町村名を抽出する
<?php
$a = '東京都豊島区池袋';
$b = mb_strpos($a, '');
echo mb_substr($a, $b + 1);
?>



このとき、日本語の処理に問題がある場合は、「php.ini」を編集します。

  • 行頭の「; セミコロン」を削除し、UTF-8に変更します