2020年のパーフェクトPHP Part1
未検証の内容を含み、正確ではない内容を含むことを承知ください。
1章 PHP概論
1.1 PHPについて
リスト1.1
原書ではHTMLのDOCTYPE宣言としてXHTML 1.0 Transitionalを使用しています XHTMLは2018年に正式にsuperseded(他の勧告に置き換えられ廃止)の状態となりました
現在ではHTML 5 Living Standardと呼ばれるHTMLが主流であり、以後HTML5を前提とします
HTML5として書き直すと以下のようになります
code:リスト1.1 PHPのサンプル.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello, World</title>
</head>
<body>
<p><?php echo "Hello, I'm PHP!"; ?></p>
</body>
</html>
1.1.2 PHPの歴史
原書では1995年のPHP 1.0リリースから2010年当時の最新版である5.3までを言及しています
PHP 5.3は本来PHP6に取り入れられる予定だった改善が多く取り込まれており、現代PHPに続く一つの区切りとなるバージョンでした 原書ではhttp://jp2.php.netという地域ミラーのリンクになっていましたが2019年頃にphp.netの常時SSL化とともにミラーリング制度が廃止されました
1.1.4 コーディングスタイル
原書では「Zend Framework PHP標準コーディング規約」を標準的なコーディングスタイルとしています
2020年現代ではPHP-FIGによるコーディング規約が知られています 原書で言及されているZend Framework PHP標準コーディング規約に基く命名規則はPSRと矛盾しないので以後も従います
1.2 Webアプリケーションの仕組み
1.2.3 Linux (CentOS/Fedora)
後述しますが、2020年においてphp-pearをインストールする必要はありません
1.2.4 Linux (Debian/Ubuntu)
後述しますが、2020年においてphp-pearをインストールする必要はありません
1.2.5 Mac OS X
Mac OS Xは2016年にリリースされたSierraからmacOSが正式名称になりました
Mac Ports(port)は現在も現役ですがコミュニティではHomebrewが好まれています brew install php mysqlでインストール可能です
1.2.6 Windows
好きな方を選んで構いません
COLUMN
2020年現在でSkypeを利用することは多くないかもしれませんが、80ポートを利用する問題は健在です
1.2.8 ソースからのインストール
2020年現在は単純なURLでダウンロードできます
wget "https://www.php.net/distributions/php-7.4.8.tar.bz2"
こちらも地域(国別)ミラーリングは廃止されました
1.3.3 コンパイルと実行
大筋においてはこの通りですが、PHP 7.0以降ではAST(抽象構文木)への変換が加わっています Apacheの説明について
最新のベストプラクティスは変わっていますが、おそらく原書の設定のままでも動くと思います (未検証)