php報錯和時間

2021-08-16 01:46:44 字數 2352 閱讀 9074

錯誤處理

錯誤的分類

語法錯誤

這種錯誤最常見,但也最容易搞定;一旦出現,一行**都不執行

執行時錯誤

在頁面上給你報出來,有的會終止**執行,有的不會

邏輯錯誤

這種錯誤最麻煩

錯誤的級別

notice  

提示級別,不會影響後續**的執行

如:輸出不存在的變數

warning 

警告級別,也不會終止**執行

如:include包含檔案

error   

錯誤級別,會終止**執行

如:語法錯誤或者require

deprecated 

反對級別,不贊成這樣的使用,不會終止**執行

如:(5.6用mysql_connect、echo mktime())

strict

語法不夠嚴謹

處理錯誤:

1.用@遮蔽錯誤資訊

有的錯誤遮蔽不了

2.通過配置檔案php.ini控制錯誤的顯示

display_errors

display_errors = off    //不顯示任何錯誤

注意:關閉錯誤顯示後,如果頁面中有error級別的錯誤,伺服器會直接返回500錯誤

error_reporting

error_reporting = e_all //顯示所有錯誤

3.通過ini_set函式設定

ini_set('配置項', '配置值')

4.通過error_reporting函式設定錯誤級別

error_reporting(0); //遮蔽所有錯誤

自定義錯誤處理:

可以通過set_error_handler函式自己接管錯誤處理。

注意:致命錯誤無法被自定義(手冊中搜尋set_error_handler)

記錄錯誤日誌

1、以檔案的方式記錄(預設)

log_errors = on     開啟錯誤日誌的記錄

error_log = c:/sb.txt 指定錯誤的路徑

2、記錄到作業系統日誌中

error_log = syslog 指定錯誤的路徑

我的電腦-》管理-》事件檢視器-》windows日誌-》應用程式

函式error_log('日誌資訊'),手動寫日誌

php的時間和日期

獲取unix時間戳

time()  獲取當前時間戳

因為unix作業系統的誕生,2023年為unix元年

mktime() 獲取乙個指定日期的時間戳

mktime(時,分,秒,月,日,年)

沒有給的引數預設為當前的!

strtotime()將英文的時間日期描述轉換為時間戳

修改php預設時區:

1、改php.ini配置檔案:

date.timezone = "prc"   //預設為utc

//prc 中華人民共和國的簡寫

//people's republic of china

date.timezone = "asia/shanghai"//上海

中原(asia/shanghai)       上海

隴蜀(asia/chongqing)      重慶

長白(asia/harbin)         哈爾濱

新藏(asia/urumqi)         烏魯木齊(慢兩小時)

崑崙(asia/kashgar)        喀什(慢兩小時)

參考:五大時區的劃分:

date.timezone = "asia/hong_kong"//香港

2、通過ini_set函式來臨時設定

ini_set('date.timezone', 'prc');

3、通過專門的函式來設定或者獲取

date_default_timezone_set('prc');

//獲取當前的時區設定

date_default_timezone_get();

格式化輸出:

date(格式字串[, 時間戳])

格式字串中不能被識別的字元將原樣顯示

echo date('y');  //4位完完整年份

echo date('m');  //月份

echo date('d');  //日

echo date('h');  //時

echo date('i');  //分

echo date('s');  //秒

y 兩位數的年份

n 沒有前導0的月份

j 沒有前導0的日

g 沒有前導0的小時

獲取微秒數: microtime([true])

給了引數true返回乙個浮點數

php時間和日期

時區設定 php中日期和時間的預設設定是 gmt格林尼治,在使用日期和時間是需要對時區進行設定 設定方法 1 修改php.ini檔案的設定。將 date.timezone 選項開啟並設定為 asia hong kong 2 在應用程式中直接使用函式date default timezone set ...

PHP 日期和時間

checkdate函式驗證日期的正確性 date函式將伺服器的時間格式化 getdate獲得時間及日期資訊 time獲取目前時間的unix時間戳。date 通過date函式可以獲取按照指定格式輸出的日期和時間資訊,如果省略引數,會自動獲取本地的當前時間。宣告如下 string date string...

PHP時間和日期

起始時間1970年1月1日至今走過的秒數 time 返回當前時間戳 秒 ps j a gettime 返回的是毫秒 microtime 返回微秒數 當前 unix時間戳,1s 1000ms,1 ms 1000 s 它的結果是字串,分兩部分,前半部分是微秒 但是單位是秒 後半部分是秒。返回字串格式示例...