質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

例外

例外(exception)とは、プログラムの処理実行中に発生する、通常の処理の続行を妨げる特殊な事象のことを呼びます。この「例外」が発生した場合に、現在の処理を中断し、変わりに別の処理を実行させる事を「例外処理」と呼びます。

Q&A

解決済

1回答

2754閲覧

PHPで Try/Catch ブロックが例外を Catch しませんでした。

huang_2014

総合スコア34

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

例外

例外(exception)とは、プログラムの処理実行中に発生する、通常の処理の続行を妨げる特殊な事象のことを呼びます。この「例外」が発生した場合に、現在の処理を中断し、変わりに別の処理を実行させる事を「例外処理」と呼びます。

0グッド

0クリップ

投稿2015/01/09 23:21

編集2015/02/12 03:24

PHPで Try/Catch ブロックが例外を Catch しませんでした。どうしたらいいのでしょうか?

このページにある Example#1 を実行しようとしました。
http://php.net/manual/ja/language.exceptions.php

lang

1function inverse($x) { 2 if (!$x) { 3 throw new Exception('ゼロによる除算。'); 4 } 5 return 1/$x; 6} 7 8try { 9 echo inverse(5) . "\n"; 10 echo inverse(0) . "\n"; 11 } catch (Exception $e) { 12 echo '捕捉した例外: ', $e->getMessage(), "\n"; 13} 14 15 16// 実行は継続される 17echo "Hello World\n";

しかし、求めているアウトプットではなく、これが出ました。

lang

10.2 2Fatal error: Uncaught exception 'Exception' with message 'ゼロによる除算。'

使っている環境はPHP5.2.3 の UniServer3.5 です。

宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

全く同じ問題が私にも起きました。
ただ、私の場合はnamespaceの問題で、exceptionの前に「\」を入れることで解決しましたよ。

function inverse($x) {
if (!$x) {
throw new \Exception('ゼロによる除算。');
}
return 1/$x;
}

try {
echo inverse(5) . "\n";
echo inverse(0) . "\n";
} catch (\Exception $e) {
echo '捕捉した例外: ', $e->getMessage(), "\n";
}

投稿2015/01/10 06:54

編集2015/02/10 03:02
kenshiro

総合スコア409

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問