【PHP技術者認定試験問題】

PDOのエラー処理3通りとは
  • PDO::ERRMODE_SILENT PHP(デフォルト)
    例外を発行せず、プログラムは続行
  • PDO::ERRMODE_WARNING
    例外を発行せず、メッセージも出力、プログラムは続行
  • PDO::ERRMODE_EXCEPTION(PHP 8.0.0 以降では、デフォルト)
    PDOException をスロー、例外を処理しない場合プログラムを停止
・Webサーバが保持しているセッションのデータを破棄する関数は
・変数保存用領域も破棄
  • session_unset
  • session_destroy
PHPでどのエラーを報告するかを設定する構成ディレクティブは

error_reporting構成ディレクティブ

PHPで取り扱うことができる代表的なエラー5つとは
Parse Errorプログラムに構成上の問題があるE_PARSE
Fatal Error
(致命的なエラー)
プログラムの内容に関わる重大の問題がある
発生した場合は処理を停止
E_ERROR
Warningプログラムに疑わしい箇所があるE_WARNING
Notice
(注意)
マナー違反のまま動作しているE_NOTICE
Strict Notice
(厳格注意)
コーディングスタイルについての注意E_STRICT
PHP付属のデバッガとは

phpdbgデバッガ

ユーザ定義の例外ハンドラを設定する関数とは
(未補足の例外(try/catchブロックで例外をキャッチできない)場合に備えて)

set_exception_handler

PHPコードの単体テストを記述するツールは

PHPUnit

UNIX/Linux環境で全ユーザに対して実行権を追加するchmodコマンド
chmod a+x ファイル名

chmod ①②③ ファイル名

  1. u:所有ユーザ、w:所有グループ、a:全ユーザ
  2. +:権限を与える、-:権限を取り除く
  3. r:読み取り権、w:書き込み権、x:実行権
Packagistとは

代表的なComposerパッケージリポジトリ(インストール可能なパッケージの一覧)

phpコマンド 7
オプション名
-S組み込みサーバを開始
-hコマンドのヘルプを表示
-mPHPに組み込まれたモジュールを表示
-aPHPを対話的に実行(PHP REPL)
※REPLとは 入力・評価・出力をできる対話型実行環境
-t組み込みWebサーバのドキュメントルートを設定
-d設定ファイル(php.ini)で設定ディレクティブにカスタム値を設定
-iphpinfo()関数を実行し、PHPの設定情報を出力
php -S Webサーバ名:ポート番号
配列はスカラー変数に代入可能か

可能、スカラー変数を配列に代入も可能

このとき、古いデータ型から新しいデータ型に置き換わります

MySQLのデータソース名の構文とは
$dsn = "mysql:host={$host_name};port=8889;dbname={$db_name}";
/データベースへの接続
$db = new PDO('データソース名', 'ユーザ名', 'パスワード');

関数内でグローバル変数にアクセスする方法で、使用するグローバル変数格納している配列は

$GLOBALS

グローバル変数は通常、関数外部のみで有効になりますが、配列$GLOBALSは関数内でもアクセスが可能です。

$num1 = 30;
foo();
function foo() {
 print $GLOBALS['num'];
}
<?php

1 {
//throw new 例外クラス名(引数)でインスタンスを作成
2(‘例外処理発生’); }
3(Exception $e) {

echo $e->4;
}

?>
  1. try
  2. throw new Exception
  3. catch
  4. getMessage()
1 ファイルの内容を読み込む ○○ (○○)

2 文字列をファイルに書き込む ○○(○○,○○)
  1. file_get_contents (ファイル名)
  2. file_put_contents ( ファイル名 , 文字列 )
1 ファイルへの接続をオープン
○○(○○, ○○)関数

2 読み書き
○○()関数、○○()関数

3 ファイルをクローズ
○○()関数
  1. ファイルへの接続をオープン
    fopen(ファイル名, ファイルのモード)関数
  2. 読み書き
    fgets()関数、fwrite()関数
  3. ファイルをクローズ
    fclose()関数
フレームワークLarabel、Symfony、Zend Frameworkのテンプレートエンジンは

※動的な処理プログラムと表示内容を記述したHTMLを別で管理する仕組みです
 テンプレート(HTMLのひな型)を必要に応じて書き換えて画面に出力するライブラリ

Larabel Blade
Symfony Twig
Zend Framework PHP

php.iniの記述で
1 Webブラウザにエラーメッセージを表示するには
2 Webサーバにエラーログを送信するには
  1. display_errors構成ディレクティブを「On」
  2. log_errors構成ディレクティブを「On」
PHPUnitでアサーションメソッドの一つです。1つ目と2つ目の引数が一致しない場合にエラーを報告

assertEquals()

fopen()のファイルのモードで
1 元のファイルをクリアして上書きしたい場合
2 追加で書き込みしたい場合
  1. w(wb?)
  2. a(ab?)
curl_setopt 6
オプション
CURLOPT_RETURNTRANSFERTRUEを設定すると、curl_exec()関数の返り値を文字列で返す
CURLOPT_HEADERTRUEを設定するとヘッダの内容も出力する
CURLOPT_POSTTRUEを設定するとPOSTのリクエストを宣言する
CURLOPT_POSTFIELDSHTTP POST で送信するデーターを設定する
CURLOPT_COOKIEJAR・TRUEを指定するとクッキーを追跡する
・ファイル名を指定すると指定のファイルにクッキーの情報が保存される
CURLOPT_COOKIEFILEクッキーのファイルを指定することでクッキーの情報を読み込む