こんにちは!
PHPのLaravelやJavaScriptでWeb開発をしているフリラーンスエンジニアのファドと申します!
こちらの記事はPHP教材の第1回目の記事になります。
その他のPHP教材を学習したい方は下記リンクから直接教材へ飛ぶことができます。
PHPとは
PHPとは動的にWebページを生成することができるサーバーサイド
のスクリプト言語です。
MySQLなどのデータベースとの連携が容易なことなどから、WordPressを含めたWebアプリケーションの開発にもよく使われる有名なスクリプト言語でもあります。
今まで学習してきたHTMLは静的にWebページの表示を行うのに対して、PHPは動的にWebページを生成します。静的なWebページ
とはいつ誰が見ても同じように表示されるページのことで、一方の動的なWebページ
とはアクセスしたタイミングや状況によって表示内容が変わるページのことを言います。
例えば、Twitterを思い浮かべてみてください。
ツイッターを開いたときに、表示されるツイート内容などは毎回変わりますよね。
これが動的なWebページ
の例です。
PHPを使うことによって、動的にHTMLを生成して表示することが可能になるのです。
PHPの主な特徴として、HTMLで記述したファイルの中に埋め込んで使えることが挙げられます。
やり方は、HTMLで記述された内容の途中に、PHPのプログラムを記述するだけです。
実際に書き方を見てみましょう。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h1><?php echo "PHPで見出しを表示"; ?></h1>
<p><?php echo "PHPで本文を表示"; ?></p>
</body>
</html>
<?PHP ?>
の中に囲まれている部分がPHPのコードとなります。
このように、PHP・HTMLを別々のファイルとして扱うのでなく、1つのファイルにまとめられるので分かりやすいのもPHPの特徴です。
また、PHPと共にWebページ生成の際によく使われるプログラミング言語が、みなさんもよくご存知のJavaScriptです。
PHPがサーバーサイド
の言語であるのに対し、JavaScriptはクライアントサイド
の言語と言われます。
簡単に言い換えると、PHPの処理はサーバー側
で行われるのに対して、JavaScriptの処理はWebページを参照するユーザー(クライアント)側のブラウザ
で行われると言えます。
環境構築
今まで学習してきたHTMLやCSS、JavaScriptとは違い、PHPではPC内に動作環境を用意してあげなければなりません。
そこで、PHPの動作環境を構築するために「MAMP」や「XAMPP」をインストールし、PHPの動作環境を用意していきましょう!
Mac
の方は下記URLより「MAMP」をインストールしましょう。
Windows
の方は下記URLより「XAMPP」をインストールしましょう。
MAMP・XAMPPとは
はじめてのPHP
フォルダ名:「php_test」
インストールが無事に完了したら、早速PHPをブラウザで表示してみましょう!
まずは以下の手順でphp_testフォルダを作成してください。
①MAMP(もしくはXAMPP)のフォルダの中から
「htdocs」という名前のフォルダを開く
② htdocsフォルダの中に「php_test」というフォルダを新たに作成する
③ php_testフォルダの中に「index.php」という名前のファイルを作成する
作成したindex.php
を下記の通り編集してください。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p><?php echo "初めてのPHP"; ?></p>
</body>
</html>
ファイル、フォルダの作成が完了したら、下記を参考にApache、MySQL を起動してください。
MAMPでの起動方法
①MAMPを開く
②Start Serverボタン押す
XAMPPでの起動方法
①XAMPPのコントロールパネルを開く
②Apache、MySQLの横のSTARTボタンをそれぞれ押す
これでブラウザへの表示の準備が完了しました!
早速下記のURLをクリックし、ブラウザで確認してみましょう!
「 http://localhost:8888/php_test/ 」または「 http://localhost/php_test/ 」
基本設定では、MAMPの方が「 http://localhost:8888/php_test/ 」
XAMPPの方が「 http://localhost/php_test/ 」となります。
※どちらにもアクセスしてみて、下記画像のような画面が表示されるURLを今後は使用してください。
このように表示されれば、OKです!
※うまくいかなかったときは、以下を確認してください。
- Apache、MySQLは正常に起動しているか
- フォルダ名、ファイル名は間違っていないか
- コードは間違っていないか(例:半角文字、半角スペースのはずが全角になっている等)
- :8888が付いているURLと付いていないURLの2パターンを試したか
★検索ワード
・MAMP localhost 表示されない
・XAMPP localhost 表示されない
PHPの書き方
フォルダ名:「php_first」
ここからはPHPの書き方の説明をしていきます。
まずHTMLと違ってPHPは書いたコードが必ず画面に出てくるわけではありません。
そこで、まず文字や数字を画面に出力するための方法から学んでいきましょう!
<?php ?>
PHPは<?php(開始タグ)
ではじまり、?>(終了タグ)
で閉じます。
開始タグと終了タグの中にPHPのコード(プログラムや命令文)を書きます。
では、先程のコードを例に説明していきます!
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p><?php echo "初めてのPHP"; ?></p>
</body>
</html>
pタグに囲まれている部分に注目してください!<?php echo "初めてのPHP"; ?>
と記述されているのがわかりますね!
開始タグと終了タグの中には
echo "初めてのPHP";
と書かれています。
ここで初めてecho
というものが出てきました。
こちらは、文字を出力するための言語構造です。
この例では「初めてのPHP」という文字列を画面に出力する役割を担っています。
そして、PHPではJavaScript同様に処理の行末にセミコロンをつけます。
「ここからここまでが、一つの命令文ですよ!」という区切りを判定するためです。
index.phpについて
先ほどphp_firstフォルダの中にindex.phpを作成し、
URLでhttp://localhost:8888/php_test/ またはhttp://localhost/php_test/
を入力したときindex.phpの中に書いてある
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p><?php echo "初めてのPHP"; ?></p>
</body>
</html>
を読み込んで、ブラウザ上に「初めてのPHP」を出力しました。
では、php_firstフォルダの中に新たにtest.php
を作成しましょう。
作成したtest.php
を下記の通り編集してください。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p><?php echo "これはテストです"; ?></p>
</body>
</html>
作成が完了しましたら、ブラウザで確認していきましょう!
URL: http://localhost:8888/php_test/test.php/
または http://localhost/php_test/test.php/
ブラウザでこのように表示されましたね。
では次に、こちらからブラウザで確認してください。
http://localhost:8888/php_test/index.php
または http://localhost/php_test/index.php
と入力して開いてください。
このように出力されましたね。
では最後に
http://localhost:8888/php_test/
または http://localhost/php_test/
ともう一度入力してブラウザで開いてください。
こちら、どういうことかというと
http://localhost:8888/php_test/ (http://localhost/php_test/) で
MAMP(もしくはXAMPP)内のhtdocsフォルダの中の php_test
というフォルダを参照しています。
フォルダを参照した時にindex
という名前はデフォルトドキュメント
という意味を持ち、省略してもブラウザで表示されます。
そのためフォルダ名を指定しない場合は自動的にindex.php
が参照されます。
つまり
http://localhost:8888/php_test/
(http://localhost/php_test/)
も
http://localhost:8888/php_test/index.php
(http://localhost/php_test/index.php)
も同じファイルを参照しているということです!
コメントアウト
フォルダ名:「comment_out」
PHPのコードにも、コメントを記述することができます。
コメントとして記述した文字などは、ブラウザに表示されることはありません。
コメントであれば見た目に影響なく、文字や文章を書き残すことができます。
ちなみに、コメントにすることをコメントアウト
と呼びます。
やり方はJavaScriptと同じです。
コメントしたい行やテキストなどを選択して、キーボードのCommand
+ /
(Windowsの方はCtrl
+ /
)を押してください。
<?php
// これはコメント
PHPの場合、/
(スラッシュ)を2記述することでコメントアウトすることができます。
また、複数行コメントアウトしたい場合は、下記のようにしてください。
<?php
/*
コメント1行目
コメント2行目
コメント3行目
*/
JavaScriptのコメントアウトと同じですね!
★検索ワード
・PHP コメントアウト ショートカット
var_dump()
フォルダ名:「var_dump」var_dump()
は変数や配列の情報を表示する関数です。
値の他にその変数の型やバイト数などの詳細な情報が表示されます。
エラーが発生してしまったときや、変数や配列に期待する値が入っているのかを調査するときによく使用します。
JavaScriptのconsole.log()
に似た使い方をするイメージで大丈夫です。
var_dump() 書き方
var_dump()は以下のように記述します。
var_dump(情報を出力する変数or配列)
()内には情報を表示したい変数や配列を入力します。
例えば、下記のような場合を見ていきましょう。
<?php
var_dump('var');
と記述した場合、下記の画像のように表示されます。
var_dump()を文字列に使用した場合string
(3)
"var"
の3つの要素から構成された表示が出力されます。string
がデータ型を表しています。
データ型については、JavaScriptとほとんど同じですが、後ほど詳しく説明していきます。(3)
は対象の値、今回の例では”var”のバイト数を表示しています。
半角英数の場合は1文字のバイト数が1であるため、例では(3)
と表示されています。
最後に"var"
の部分ですが、こちらはvar_dumpの()内に入れた文字が表示されています。
var_dump() 機能の確認
それでは実際に使ってみて、機能を確認していきましょう!
MAMP(XAMPP)のhtdocsフォルダ内に’var_dump’という名前のフォルダを作成し、その中にindex.php
というファイルを作成してください!
変数の場合
index.php
を下記の通り編集してください。
<?php
$text = "test";
var_dump($text);
では、ブラウザで確認していきます!
http://localhost:8888/var_dump/
または http://localhost/var_dump/
変数の中身を確認する場合には上記のように使用します!
変数text
の中にはtestという文字が格納されていることがわかりますね!
文字列の場合
<?php
var_dump('string');
文字列の場合は先程例に挙げた通りです!
ブラウザで確認する場合は、ブラウザを再読み込みしてください。
数値の場合
<?php
$num = 1234
var_dump(num);
変数に数値を格納し、var_dump()で情報を確認すると上の画像のように表示されます!
ブラウザで確認する場合は、ブラウザを再読み込みしてください。
int
の部分は文字列の場合と同じようにデータ型が表示されます。
数値の場合は文字列の場合のように、バイト数は表示されません。
また、1234
の部分は文字列の場合と同じように変数の中身が表示されています。
配列の場合
<?php
$array = ['string1', 'string2', 'string3'];
var_dump($array);
$array2 = [1, 2, 3, 4];
var_dump($array2);
$array3 = [1, 'string', 3, 4];
var_dump($array3);
変数に配列を格納し、var_dump()で情報を確認するとそれぞれ下の画像のように表示されます!
それぞれ一緒に見ていきましょう!
①配列に文字列のみを格納したパターン
②配列に数値のみを格納したパターン
③配列に文字列と数値を格納したパターン
配列の場合は、変数の場合と少し表示のされ方が違います。
データ型が表示されているところは変数のときと同じですが、配列の場合には要素数
とインデックス番号
というものが表示されます。
まず、要素数
というのは、対象の配列の中に要素(データ)が何個格納されているのかというものです。
①を例に挙げると、配列array
の中に格納されている要素はstring1
、string2
、string3
の3つの要素が入っているので要素数は3
と表示されています。
続いて、インデックス番号
というのは、配列はその性質上複数の要素を格納することが可能です。
そこで複数ある要素から1つを特定できるように、要素には先頭から順に番号が割り当てられています。
この番号をインデックス番号と呼んでおり「0」「1」「2」…と0から順に番号が割り当てられています。
インデックス番号を指定することで配列から要素を取り出すことも可能です。
実際の使い方は配列のレクチャーで説明していきますので、お楽しみに!
このようにvar_dump()を使用すると、変数や配列の中に格納されている要素(データ)がどのようなものだったのかを確認することが可能なので、コードの記述効率が格段にアップします。
ぜひ使い方をマスターしていってください。
★検索ワード
・PHP var_dump
次の教材
次の教材は下記から簡単に飛ぶことができます!
引き続きプログラミングを楽しんでいきましょう!
プログラミング学習サポートについて
「独学で挫折した。。。」
「一人でのプログラミング学習がしんどい。。。」
「未経験からエンジニア転職をしたいけど何をしたら良いかわからない。。。」
このような悩みをお持ちの方向けに、本教材作成者のファドがMENTAという学習サイトにてあなたのプログラミング学習とエンジニア転職を徹底サポートいたします!
サポート価格はなんと1日あたりたったの約300円!
教材で分からない箇所のサポートはもちろんのこと、本サイトで公開しているすべての課題の解答も公開しております。
また、MENTAで学習を終わらせていただいた方限定で懇意にしていただいている企業さんを紹介することもあります!
なお、サポート内容の詳細は下記の通りです。
- 目標設定
- マインドセット
- オリジナル教材見放題
- オリジナル課題見放題
- オリジナル課題の解答見放題
- 課題コードレビュー
- 教材への無制限質問
- 課題への無制限質問
- ポートフォリオ作成アドバイス
- 褒めのコーチング
いくつかのプランを用意させていただいておりますので、下記より一度ご覧ください!
コメント