首頁 後端開發 php教程 PHP5.3废弃函数 顶替记

PHP5.3废弃函数 顶替记

Jun 13, 2016 am 11:03 AM
match pattern replace string

PHP5.3废弃函数 替代记

?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’ 修正符替代)
????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_* 系列常量替代.
????mktime()is_dst 参数. 使用新的时区处理函数替代.

涉及到的主要的函数迁移如下:
删除函数 define_syslog_variables 引用删除对函数 define_syslog_variables 的引用将变量 $LOG_ERR, $LOG_USER 等用常量 LOG_USER, LOG_USER, … 替代
ereg, eregi 函数用 preg_match 函数替代这几个函数的函数声明int ereg ( string$pattern , string $string [, array &$regs ] ) int eregi ( string $pattern , string $string [, array &$regs ] ) intpreg_match ( string $pattern , string $subject [, array &$matches [, int $flags [, int $offset ]]] )虽然三者的第一个参数都是字符串,表示一个正则表达式,但是 preg_match 用的是 PCRE(Perl 兼容的正则表达式语法):正则表达式的两端用一个符号做边界,如 “/pattern/” 或者 “#pattern#”,eregi 是乎略大小写的匹配,转换为 preg_match,第一个参数,用PCRE的参数来乎略大小写,如:”/pattern/i” 或者 “#pattern#i”,两者的第三个参数返回的匹配的数据结构不同。ereg 的第三个参数在调用结束后,返回的是一个字符串数组,分别为完整匹配字串和各个子匹配字串。preg_match 返回的是二维数组,相当于 ereg 的字串数组中的字串在 preg_match 是一个数组,分别保存匹配值以及匹配位置。如果要进行多次匹配,PHP 提供了 preg_match_all 函数,其第三个参数的返回值则是一个三维数组.
ereg_replace, eregi_replace 函数用 preg_replace 函数或者 str_replace 函数来替代和前面的 ereg 替换为 preg_match 类似,第一个参数要进行转换,头尾增加一个符号,如:”/pattern/” 或者 “#pattern#”, …eregi_replace 到 preg_replace 的替换,在第一个参数的后面增加正则表达式参数。如:”/pattern/i” 或者 “#pattern#i”, …如果 ereg_replace 的第一个参数不是正则表达式,可以用 str_replace 直接来替换。
spliti 函数用 explode 或则 preg_split 函数替代split 切分字符串,如果无须用到正则表达式,使用 explode 替换是最好不过,速度最快.对于使用正则表达式切分字串,则使用 preg_split 函数替代。替代过程和 ereg/ereg_replace 类似,只是在第一个正则表达式参数中做文章,将 split 的正则表达式前后加上一个 PCRE 的分隔符号。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1328
25
PHP教程
1273
29
C# 教程
1253
24
使用java的String.valueOf()函數將基本資料型別轉換為字串 使用java的String.valueOf()函數將基本資料型別轉換為字串 Jul 24, 2023 pm 07:55 PM

使用Java的String.valueOf()函數將基本資料型別轉換為字串在Java開發中,當我們需要將基本資料型別轉換為字串時,常見的方法是使用String類別的valueOf()函數。這個函數可以接受基本資料類型的參數,並傳回對應的字串表示。在本文中,我們將探討如何使用String.valueOf()函數進行基本資料型別轉換,並提供一些程式碼範例來

怎麼把char數組轉string 怎麼把char數組轉string Jun 09, 2023 am 10:04 AM

char陣列轉string的方法:可以透過賦值來實現,使用{char a[]=" abc d\0efg ";string s=a;}語法,讓char陣列對string直接賦值,執行程式碼即可完成轉換。

使用java的String.replace()函數替換字串中的字元(字串) 使用java的String.replace()函數替換字串中的字元(字串) Jul 25, 2023 pm 05:16 PM

使用Java的String.replace()函數替換字串中的字元(字串)在Java中,字串是不可變的對象,這意味著一旦創建了一個字串對象,就無法修改它的值。但是,你可能會遇到需要替換字串中的某些字元或字串的情況。這時候,我們可以使用Java的String類別中的replace()方法來實作字串的替換。 String類別的replace()方法有兩種重

使用java的String.length()函數取得字串的長度 使用java的String.length()函數取得字串的長度 Jul 25, 2023 am 09:09 AM

使用Java的String.length()函數取得字串的長度在Java程式設計中,字串是一種非常常見的資料類型,我們經常需要取得字串的長度,即字串中字元的個數。在Java中,我們可以使用String類別的length()函數來取得字串的長度。下面是一個簡單的範例程式碼:publicclassStringLengthExample{publ

2w字 詳解 String,yyds 2w字 詳解 String,yyds Aug 24, 2023 pm 03:56 PM

大家好,今天跟大家分享java基礎之String。 String類別的重要性就不必說了,可以說是我們後端開發用的最多的類,所以,很有必要好好聊聊它。

MySQL中如何使用REPLACE函數取代字串中的指定部分 MySQL中如何使用REPLACE函數取代字串中的指定部分 Jul 25, 2023 pm 01:18 PM

MySQL是一種常用的關聯式資料庫管理系統,它提供了多種函數來處理和操作資料。其中,REPLACE函數是用來替換字串中的指定部分內容的。在本文中,將介紹如何在MySQL中使用REPLACE函數進行字串替換,並透過程式碼範例來示範其用法。首先,我們來了解REPLACE函數的語法:REPLACE(str,search_str,replace_str)其

Python中的字串尋找和替換技巧有哪些? Python中的字串尋找和替換技巧有哪些? Oct 20, 2023 am 11:42 AM

Python中的字串尋找和替換技巧有哪些? (具體程式碼範例)在Python中,字串是一種常見的資料類型,我們在日常程式設計中經常會遇到字串的尋找和替換操作。本文將介紹一些常用的字串查找和替換技巧,並配以具體的程式碼範例。尋找子字串在字串中尋找特定的子字串可以使用字串的find()方法或index()方法。 find()方法傳回子字串在字串中第一次出現的位置索

使用java的String.toLowerCase()函數將字串轉換為小寫 使用java的String.toLowerCase()函數將字串轉換為小寫 Jul 24, 2023 pm 11:52 PM

String.toLowerCase()函數是Java中一個非常有用且常見的字串處理函數,它可以將一個字串轉換為小寫形式。在本文中,我們將介紹該函數的使用方法,並給出一些相關的程式碼範例。首先,讓我們來看看String.toLowerCase()函數的基本語法。它沒有任何參數,只需要呼叫它。下面是範例程式碼:Stringstr="Hel

See all articles