ホームページ バックエンド開発 PHPチュートリアル PHP共通関数blocks_Exceptionとタイムスタンプ — php (33)

PHP共通関数blocks_Exceptionとタイムスタンプ — php (33)

Aug 08, 2016 am 09:23 AM
echo function message php

例外(前回の記事からの続き)

簡単な例外処理の例

<?<span>php
</span><span>try</span><span> {
$error</span>= <span>'</span><span>Always throw this error</span><span>'</span><span>;
</span><span>throw</span><span>new</span><span> Exception($error);
</span><span>//</span><span>创建一个异常对象,通过throw语句抛出</span>echo <span>'</span><span>Neverexecuted</span><span>'</span><span>;
</span><span>//</span><span>从这里开始,try代码块内的代码将不会再被执行</span>} <span>catch</span><span> (Exception $e) {
echo </span><span>'</span><span>Caught exception:</span><span>'</span>, $e->getMessage(), <span>"</span><span>\n</span><span>"</span><span>;
</span><span>//</span><span>输出捕获的异常消息</span><span>}
echo </span><span>'</span><span>Hello World</span><span>'</span>; <span>//</span><span>程序没有崩溃继续向下执行</span>?>
ログイン後にコピー

システムには例外処理が付属しています

<?<span>php
classException{
</span><span>protected</span>$message=<span>'</span><span>Unknownexception</span><span>'</span>;<span>//</span><span>异常信息</span><span>protected</span>$code=<span>0</span>;<span>//</span><span>用户自定义异常代码</span><span>protected</span>$file;<span>//</span><span>发生异常的文件名</span><span>protected</span>$line;<span>//</span><span>发生异常的代码行号</span>function__construct($message=<span>null</span>,$code=<span>0</span><span>);
finalfunctiongetMessage();</span><span>//</span><span>返回异常信息</span>finalfunctiongetCode();<span>//</span><span>返回异常代码</span>finalfunctiongetFile();<span>//</span><span>返回发生异常的文件名</span>finalfunctiongetLine();<span>//</span><span>返回发生异常的代码行号</span>finalfunctiongetTrace();<span>//</span><span>backtrace()数组</span>finalfunctiongetTraceAsString(); <span>//</span><span>已格成化成字符串</span><span>的getTrace()信息
</span><span>/*</span><span>可重载的方法</span><span>*/</span><span>function__toString();</span><span>//</span><span>可输出的字符串</span><span>}
</span>?>
ログイン後にコピー

<?<span>php
</span><span>/*</span><span> 自定义的一个异常处理类,但必须是扩展内异常处理类的子类</span><span>*/</span><span>class</span><span> MyExceptionextends Exception{
</span><span>//</span><span>重定义构造器使第一个参数message 变为必须被指定的属性</span><span>public</span> function __construct($message, $code=<span>0</span><span>){
</span><span>//</span><span>可以在这里定义一些自己的代码
</span><span>//</span><span>建议同时调用parent::construct()来检查所有的变量是否已被赋值</span><span>parent::__construct($message, $code);
}
</span><span>public</span><span> function __toString() {
</span><span>//</span><span>重写父类方法,自定义字符串输出的样式</span><span>return</span> __CLASS__.<span>"</span><span>:[</span><span>"</span>.$<span>this</span>->code.<span>"</span><span>]:</span><span>"</span>.$<span>this</span>->message.<span>"</span><span><br></span><span>"</span><span>;
}
</span><span>public</span><span> function customFunction() {
</span><span>//</span><span>为这个异常自定义一个处理方法</span>echo <span>"</span><span>按自定义的方法处理出现的这个类型的异常<br></span><span>"</span><span>;
}
}
</span>?>
ログイン後にコピー

カスタム例外

りー

キャプチャされた複数の例外

<?<span>php
</span><span>try</span> { <span>//</span><span>使用自定义的异常类捕获一个异常,并处理异常</span>$error = <span>'</span><span>允许抛出这个错误</span><span>'</span><span>;
</span><span>throw</span><span>new</span><span> MyException($error);
</span><span>//</span><span>创建一个自定义的异常类对象,通过throw语句抛出</span>echo <span>'</span><span>Never executed</span><span>'</span>; <span>//</span><span>从这里开始,try代码块内的代码将不会再被执行</span>} <span>catch</span> (MyException$e) { <span>//</span><span>捕获自定义的异常对象</span>echo <span>'</span><span>捕获异常: </span><span>'</span>.$e; <span>//</span><span>输出捕获的异常消息</span>$e->customFunction(); <span>//</span><span>通过自定义的异常对象中的方法处理异常</span><span>}
echo </span><span>'</span><span>你好呀</span><span>'</span>; <span>//</span><span>程序没有崩溃继续向下执行</span>?><br>
ログイン後にコピー

2 タイムスタンプ

2.1 UNIX タイムスタンプ

Unix タイムスタンプ:
??Unix エポック以降 (1970 年 1 月 1 日 00:00:00 G) MT ) の数に現在時刻の秒です。
??関連関数:
??time() 関数を使用して、現在のシステムのタイムスタンプを返します
??mktime() -- 日付の Unix タイムスタンプを取得します
??形式: intmktime (時[,分[,秒[,月[,日[,年[,is_dstエリア]]]]]];
??注: is_dst パラメーターは、

2.2 PHP で日付と時刻を取得するかどうかを示します

getdate--日付/時刻情報を取得します
??形式: array getdate([inttimestamp])
??タイムスタンプに基づいて日付情報を含む結合された配列を返します。タイムスタンプが指定されていない場合は、現在の現地時間が想定されます。配列内の単位は次のとおりです:

2.3 日付と時刻のフォーマットされた出力

date -- ローカル時刻/日付をフォーマットします
??形式: string date ( string format [, inttimestamp] )
? ?指定された形式文字列に従って整数のタイムスタンプを取得して生成された文字列を返します。タイムスタンプが指定されていない場合は、ローカルの現在時刻が使用されます。つまり、タイムスタンプはオプションであり、デフォルト値は time() (現在のタイムスタンプ) です。
??例:
echo date("Y year m month d day H:i:s");//2010 年 10 月 28 日 14:22:28
Y: 4 桁の年 m: 月 01-12 n : 月 1-12d: 日 01-31 j: 日 1-31
H: 時 24 時間制 h: 時 12 時間制 i: 分 00-59 s: 秒 00-59 w: 曜日 0 -6
A : 午前または午後 a: 午前または午後。

2.4 PHP のデフォルトのタイムゾーンを変更する

PHP のデフォルトのタイムゾーンを変更するには 2 つの方法があります:
??1. php.ini 設定ファイルを修復します:
??date.timez/GMT+8
??2 date_default_timezone_set 関数を使用します: -- スクリプト内のすべての日付と時刻関数のデフォルトのタイムゾーンを設定します。
??例: date_default_timezone_set("PRC");//中国のタイムゾーン。
??date_default_timezone_get(); // 現在のタイムゾーンを取得します

2.5 マイクロ秒を使用して PHP スクリプトの実行時間を計算します

microtime -- 現在の Unix タイムスタンプとマイクロ秒を返します
??形式:mixed microtime( [boolget_as_float] )
??microtime() 現在の Unix タイムスタンプとマイクロ秒。この関数は、gettimeofday() システム コールをサポートするオペレーティング システムでのみ使用できます。
??オプションのパラメーターを指定せずに呼び出された場合、この関数は「msecsec」形式の文字列を返します。ここで、sec は Unix エポック (グリニッジ標準時 1970 年 1 月 1 日 0:00:00) からの秒数です。ミリ秒はマイクロ秒です。一部。文字列の両方の部分が秒単位で返されます。
??get_as_float パラメーターが指定され、その値が TRUE と同等の場合、microtime() は浮動小数点数を返します。

上記は、PHP_Exception と timestamp - php (33) の一般的な関数ブロックを、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

See all articles