【第四回】PHPでシステム開発を実践!基本的な構文①

はじめに

これまでの記事で開発環境の構築や設定などを行っていきました。

VScodeだけでも色々と便利な機能がありますが、そちらについて掘り下げますと記事が長くなってしまいますので割愛いたします。
もし拡張機能やショートカットキーなども勉強したいとのことでしたら、以下参考サイトをご覧になってみて下さい。
きっとお役に立つかと思います。

さて、いよいよ今回の記事からPHPの基本的な構文を取り上げていこうと思います。
まずはよく使う関数(ファンクション)から1つ1つ確認していきましょう。

参考:Visual Studio Code入門
参考:VS Codeの使い方講座!日本語化する拡張機能のインストールも紹介!
参考:【完全保存版】VS Code ショートカット

echo

文字などを表示させたいという時に使用するのがechoです。
前回の記事でsample.phpというファイルを作りました。
こちらのファイルを使って、文字を表示させてみましょう。

まずはhtmlの基本的なフォーマットを入力します。
こちらVScodeでは、入力する手間を省くためにショートカットキーというものがあります。
htmlのフォーマットも簡単に入力してくれるショートカットキーがありまして、1行目に!とビックリマークを半角で入力しますと候補が表示されます。

その中の!が1つだけのものを選択し、エンターキーを押します。
VSCショートカットキー
エンターキーを押しますと以下画像のようにhtmlが入力されます。

入力されましたら2行目にありますlang=”en”となっているところをlang=”ja”としましょう。
こちらにより英語(English)から日本語(Japan)に変更されます。
あとは必要に応じてtitleタグなどを変えて下さい。
VSCショートカットキー
htmlをご存じの方は文字を表示させる場合、どこに入力すればいいか分かるかと思いますが、bodyタグで囲んだ中に入力します。
そしてhtmlの中にPHPを入力する場合は、開始タグ<?phpと終了タグ?>で囲み、その中に入力します。

今回はPHPのechoを使って文字を表示させますので、以下の画像のように<body>と</body>の中に入力します。

試しに

<?php echo ‘PHPで表示しています。’; ?>

と入力してみましょう。

最後のセミコロン(;)も忘れずに気を付けて下さい。
PHPのecho
入力しましたら保存をしましょう。
Windowsユーザーでしたら「Ctrl」+「S」で、Macユーザーでしたら「Command」+「S」で上書き保存することができます。
最後にブラウザで適切に表示されるか確認していきます。
この時、MAMPが問題なく起動していることを確認しましょう。

Google Chromeを開きまして、上にURLを入力します。
こちらファイル名などで変わってきますが、まず最初に
http://localhost:8888
と入力しましょう。

そしてその後に/(スラッシュ)を入力し、フォルダ名やファイル名を入力してエンターキーを押します。
今回の場合ですと、MAMPのサーバーの中に「lesson」フォルダを作り、その中に「sample.php」というファイルを作りました。
ファイルの場所

そのためURLは

http://localhost:8888/lesson/sample.php

となります。
ブラウザの表示確認
すると以下の画像のように表示されます。
ブラウザの表示確認
もしこの時点で表示されない場合やNot Foundのようなエラーが表示された場合は、MAMPが起動していないかURLが間違っている可能性があります。
それぞれ問題ないか確認をしてみて下さい。

さて今回取り上げましたechoは、その後に続きますシングルクォーテーションで囲んだものを表示するという動きをします。
そのためシングルクォーテーションで囲みました「PHPで表示しています。」がブラウザに表示されていましたら適切にプログラムが動いたことになります。

エスケープシーケンス

ここでエスケープシーケンスについて触れていこうと思います。
先ほどのechoを例に説明していきます。

echoは、echoの後に入力したシングルクォーテーションで囲んだ文章を出力(表示)しますが、ここでシングルクォーテーションの中の文章を英語にしてみます。

<?php echo ‘I’m fine’; ?>

例えば上記のように、英文の中にシングルクオーテーションが入る場合があります。
ただPHPでは、文を囲んでいるシングルクォーテーションなのか、文の一部として入力されているシングルクォーテーションなのか、その区別ができずエラーとなります。
シングルクォーテーションエラー
ブラウザの表示も以下のようになります。
シングルクォーテーションエラー

そこでこのようなことを防ぐための方法として2つの方法があります。

ダブルクォーテーションを使う方法

1つは単純に囲んでいるシングルクォーテーションをダブルクォーテーションにする方法です。

<?php echo “I’m fine”; ?>

ダブルクォーテーションを使った方法

厳密にはシングルクォーテーションとダブルクォーテーションの意味は少し違うのですが、今回の場合では同じ意味として使用することが可能です。

ただシングルクォーテーションとダブルクォーテーションが混在した文章の場合、こちらの方法は使用することが出来ません。
その場合は、次のエスケープシーケンスというものを使用します。

エスケープシーケンスを使う方法

どちらかといえば、こちらのエスケープシーケンスの方法を優先的に使った方が良いかと思います。

さてエスケープシーケンスですが、表示する文章内で使用していますクォーテーション記号の1つ前にバックスラッシュ(\)を入力しますとそのクォーテーション記号は、文章全体を囲んでいるクォーテーション記号ではなく文章の1つですよと意味することが出来ます。

文章を囲んでいるクォーテーション記号と区別するためのものなので、もし文章を囲んでいるクォーテーション記号がシングルクォーテーションの場合は文章内のシングルクォーテーションの1つ前にバックスラッシュを、ダブルクォーテーションの場合は文章内のダブルクォーテーションの1つ前にバックスラッシュを入力します。

<?php echo ‘I\’m fine’; ?>

エスケープシーケンス

キーボードによっては、バックスラッシュが無かったり円マークになってしまう場合があります。
もしその場合は参考サイトをご参考に入力してみて下さい。

こちらで再度、ブラウザを読み込みますと適切に文章が表示されるようになりました。
エスケープシーケンス表示確認

参考:【Windows】全角・半角のバックスラッシュ「\」を入力する方法
参考:「/ 」逆向き|Windowの2つの入力方法とmacの入力方法
参考:エスケープシーケンス

エラーメッセージの表示

ここまででプログラムを入力し、実行してきましたが先ほどのエスケープシーケンスを使用した時のようにうまくプログラムが実行されない時が多くあります。
その際、どの場所が原因で動かないのかエラーメッセージを表示することが可能です。
表示させることにより、開発作業がしやすくなります。

ただこちらネット上に公開したサイトですと、エラーメッセージを表示してしまうと攻撃されてしまう可能性が高くなりますので、あくまでローカル上で確認する時だけに限定してください。

それでは設定していきます。
こちらはWindowsとMacで少し違いがありますので、分けて記載していこうと思います。
ちなみに当方WindowsユーザーのためWindowsメインの操作になりますが、Macの操作についても可能な限り分かりやすく記載するよう努力いたします。

Windowsの場合

まずはMAMPを起動します。
起動しますと表示される画面の中にあります「Open WebStart page」をクリックします。
この際、MAMPが起動(サーバーが動いている)していることを確認してください。
MAMPエラーメッセージ表示設定
するとブラウザが自動で開きます。
開きましたらメニューの中にあります「TOOLS」をクリックしますと下にさらにメニューが展開されますので、その中の「PHPINFO」をクリックします。
MAMP「PHPINFO」
クリックしますとPHPの設定項目の画面が開きます。
今回はこの中にあります「Loaded Configuration File」を確認します。
MAMP「PHPINFO」ページ
ここで「php.ini」ファイルがどこに保存されているのか確認しますが、「conf」フォルダの中にあることが分かります。
そこでその場所をエクスプローラーで開きます。
Cドライブ内にあります「MAMP」フォルダ内の「conf」の中にあります。
エクスプローラーphp.ini
「php.ini」ファイルが見つかりましたら、そちらを右クリックし「Codeで開く」をクリックし、VScodeで開き編集します。
VScodeで開く
するとファイルを信用しますかというポップアップが表示されますので、「開く」をクリックします。
VSCで「php.ini」を開く
すると「php.ini」が開きますので、「display_errors = off」と入力されている文を探します。
探す際は、ファイル内検索で検索しますと見つけやすくなります。
ファイル内検索の起動方法は「Ctr+F」を押します。押しますと検索項目入力欄が表示されます。
VSCエラーメッセージ設定
こちらはエラーメッセージの表示、非表示を設定するもので、offが非表示という意味になります。
そこで表示させるためにonに書き換え、上書き保存します。
VSCエラーメッセージ表示設定
そしてMAMPを再起動し、変更した設定を適応します。
まずはMAMPの起動画面内にあります「Stop Servers」のボタンをクリックし、停止しましたら今度は「Start Servers」をクリックしましょう。
MAMP再起動
正しく起動しましたら、以上でエラーメッセージの設定は終わりです。

Macの場合

Macの場合でもMAMPを起動しましょう。
起動しましたら表示された画面内の右上にあります「WebStart」をクリックします。
するとWindowsの時と同様、ブラウザが自動で開き、MAMPのスタート画面が表示されます。

そちらの画面内に「Tools」というメニューがありますのでクリックしますと下にさらにメニューが展開されます。
展開されたメニュー内にあります「phpinfo」をクリックします。
するとPHPの設定項目の画面が開きます。
今回はこの中にあります「Loaded Configuration File」を確認します。

「php.ini」ファイルがどこに保存されているのか確認しますが、「conf」フォルダの中にあることが分かります。
そこで「Finder」を開き、「アプリケーション」フォルダの中にあります「MAMP」フォルダをクリックし、さらに「bin」フォルダをクリックします。
そして「php」フォルダの中にあります「php〇.〇.〇」のフォルダをクリックします。
こちらの〇の部分は、PHPのバージョンでしてMAMPで設定しているバージョンのフォルダを開きましょう。

開きましたら「conf」フォルダをクリックしますと「php.ini」が保存されていますので、こちらのファイルを開いているVScodeの上までドラッグ&ドロップし、VScodeで開きます。

するとファイルを信用しますかというポップアップが表示されますので、「開く」をクリックします。
開きましたら「display_errors = off」と入力されている文を探します。
探す際は、ファイル内検索で検索しますと見つけやすくなります。
ファイル内検索の起動方法は「Ctr+F」を押します。押しますと検索項目入力欄が表示されます。

こちらはエラーメッセージの表示、非表示を設定するもので、offが非表示という意味になります。
表示させるためにonに書き換え、上書き保存します。

そしてMAMPを再起動し、変更した設定を適応します。
まずはMAMPの起動画面内にあります「Stop」のボタンをクリックし、停止しましたら今度は「Start」をクリックしましょう。

正しく起動しましたら、以上でエラーメッセージの設定は終わりです。

まとめ

今回の記事では、echoという文字を出力させる機能や混在するクォーテーション記号の区別をするためのエスケープシーケンス、そしてプログラムが正しく動かなかった時のエラーメッセージの表示設定について取り上げました。

まだPHPの序章の段階で、これから次々と新しいことが出てきます。
全て覚えようとしなくてもいいので1つ1つ理解を深めていきましょう。

この記事をシェアしましょう!