PHP 5.3.x で推奨されない機能
PHP 5.3.0 では新しく二つのエラーレベルが加わりました。
E_DEPRECATED
と E_USER_DEPRECATED
です。
E_DEPRECATED
エラーレベルは、
特定の機能が推奨されないことを示すのに使います。
E_USER_DEPRECATED
エラーレベルは、ユーザー定義のコードで推奨されない機能、たとえば
E_USER_ERROR
や E_USER_WARNING
のようなものを示すのに使います。
INI ディレクティブで推奨されないものは以下の通りです。
これらのひとつ以上を有効にすると、起動時
E_DEPRECATED
エラーが発生します
推奨されない関数
-
call_user_method (かわりに
call_user_func を使用します)
-
call_user_method_array (かわりに
call_user_func_array を使用します)
-
define_syslog_variables
-
dl
-
ereg (かわりに preg_match を使用します)
-
ereg_replace (かわりに preg_replace
を使用します)
-
eregi (かわりに preg_match で
'i' 修正子を使用します)
-
eregi_replace (かわりに preg_replace
で 'i' 修正子を使用します)
-
mcrypt_generic_end
-
set_magic_quotes_runtime およびそのエイリアスである
magic_quotes_runtime
-
session_register (かわりにスーパーグローバル $_SESSION
を使用します)
-
session_unregister (かわりにスーパーグローバル
$_SESSION を使用します)
-
session_is_registered (かわりにスーパーグローバル
$_SESSION を使用します)
-
set_socket_blocking (かわりに
stream_set_blocking を使用します)
-
split (かわりに preg_split を使用します)
-
spliti (かわりに preg_split で
'i' 修正子を使用します)
-
sql_regcase
-
mysql_db_query (かわりに
mysql_select_db および mysql_query
を使用します)
-
mysql_escape_string (かわりに
mysql_real_escape_string を使用します)
-
ロケールカテゴリ名を文字列で渡すこと。かわりに LC_*
系の定数を使用します。
-
is_dst
を mktime に渡すこと。
かわりにタイムゾーン処理用の新しい関数を使用します。
推奨されない機能
-
new
の返り値を参照で代入すること
-
呼び出し時の参照渡し