【PHP8.x】__toStringメソッドの使い方

作成日: 更新日:

__toStringメソッドは、Errorクラスのインスタンスを文字列に変換する際に自動的に呼び出されるメソッドです。このメソッドは、エラーオブジェクトが持つ情報(エラーメッセージ、エラーが発生したファイル名、行番号、スタックトレースなど)を読み取り、それらを整形して人間が読みやすい形式の文字列として返します。

例えば、Errorオブジェクトをecho文で出力しようとしたり、文字列結合の操作に使用したり、あるいはログファイルにエラー情報を記録するために文字列として扱われたりする際に、PHPエンジンによって内部的にこの__toStringメソッドが呼び出されます。

この機能により、開発者はプログラム実行中に発生したエラーについて、その原因や状況を詳細かつ一貫した形式で把握することができます。デバッグ作業やエラー監視システムにおいて、エラー情報を効果的に利用するために非常に重要な役割を果たします。戻り値は常に、エラーの完全な詳細情報を含む文字列となります。

基本的な使い方

構文(syntax)

1<?php
2try {
3    throw new Error('このエラーは__toString()によって文字列化されます。');
4} catch (Error $e) {
5    // Errorオブジェクトが文字列コンテキストで使用されると、__toString() メソッドが自動的に呼び出されます。
6    // その結果、エラーメッセージを含む文字列が出力されます。
7    echo $e;
8}

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

このメソッドは、エラーオブジェクトの文字列表現を返します。エラーの種類、ファイル名、行番号、およびエラーメッセージを含む文字列が生成されます。

【PHP8.x】__toStringメソッドの使い方 | いっしー@Webエンジニア