こんにちは。PHP技術者認定機構 CTOの古庄道明です。
今日もPHP8上級試験の模擬問題と解説を紹介します。
以下を解いて出題のイメージと知識を補っていただけると幸いです。
問題
「PHPをインストールする」にあたっての一般的な注意事項のうち、誤っているものを1つ選びなさい。
選択肢
選択肢1
PHPの最新のコードは、公式サイト https://www.php.net/ から、Downloads
https://www.php.net/downloads に遷移すると、Changelogの確認を含めて取得できる。
選択肢2
PHPの「最新以外の(古い)コード」は、公式サイトでの提供は全くしていない。そのため、古いバージョンのコードが必要な場合、別途「非公式の外部サイト」からソー
スコードを入手する必要がある。
選択肢3
ダウンロードできるソースコードの拡張子は「.tar.bz2」「.tar.gz」「.tar.xz」等があるが、解凍すれば中身のコードは同じものである。
選択肢4
Downloads https://www.php.net/downloads にはファイル指紋(sha256)がついているので、ダウンロードしたら、改竄の確認をするとよい。
回答と解説
問題は「PHPのインストールについて」です。
選択肢1を見ていきましょう。
まず最新のコードですが、これは 公式サイト https://www.php.net/ から、Downloads
https://www.php.net/downloads に遷移すると、サポート中の各マイナーバージョンの、最新メンテナンスバージョンを取得することができます。
また、Changelog のリンクから、それぞれの ChangeLog を確認することができます。
実際に一度、ブラウザで確認をしてみるとよいでしょう。
したがって、この選択肢の内容は正しい説明です。
選択肢2を見ていきましょう。
PHPの「最新以外の(古い)コード」は、https://www.php.net/ から https://www.php.net/downloads.php に遷移し、メニュー「Old Archives」でhttps://www.php.net/releases/ に遷移すると、3.0.xおよび4.0.0以降の各バージョ
ンのソースコードをダウンロードすることができます。
古いバージョンになると、ソースコードは tar.gz のみとなりますが、どうしても必要であれば、取得すること自体は可能となります。
したがって、この選択肢は誤った記述です。
選択肢3を見ていきましょう。
古いソースコードは上述の通り tar.gz のみとなりますが、サポート中のバージョンであれば、試験対象のバージョン(PHP 8.0.0)で、tar.gz と tar.bz2 と tar.xz の3種類でのダウンロードが可能になります。
これらはいずれも「複数ファイルを1ファイルにアーカイブするtar」と「データ圧縮形式」の違いだけであるため、解凍した後の中身は同じコードになります。
したがって、この選択肢の内容は正しい説明です。
選択肢4を見ていきましょう。
Downloads https://www.php.net/downloads や、ある程度のバージョン以降の https://www.php.net/releases/ には、sha256: 3ed7b48d64357d3e8fa9e828dbe7416228f84105b8290c2f9779cd66be31ea71
といった記述があります。
これは「ファイル指紋」といって、ファイルの完全性を(完全に、ではないですが)確認することができます。
こういった検証はセキュリティ上とても大切であるため、「ソースコードをダウンロードしたら、ファイル指紋を確認する」癖をつけておくとよいでしょう。
したがって、この選択肢の内容は正しい説明です。
上級模擬試験では、選択肢2に誤りがあるため、選択肢2が正解になります。
PHP8上級試験と公式問題集に興味がある方は、以下のページをご覧のうえ、この機会に是非受験ください。
PHP8上級試験
https://www.phpexam.jp/summary/expert8
公式問題集:PHP8技術者認定上級試験公式問題集上巻
https://www.amazon.co.jp/dp/B0FQ1LTTQ4/
公式問題集:PHP8技術者認定上級試験公式問題集下巻ベータ
https://www.amazon.co.jp/dp/B0F7F4H8FP/
また、試験対策セミナーは毎月開催しています。興味がある方は以下のページをご覧いただき是非セミナーにもご参加ください。(フォローいただけるとセミナーのご案内が届くようになります)
PHP技術者認定機構の公式Peatixグループ
https://peatix.com/group/43424
www.phpexam.jp

