亚洲精品国产精品乱码视色,下载应用成人电影AVapp,成人影院下载视频

      <track id="gfhue"><i id="gfhue"></i></track><input id="gfhue"></input>

      1. 更多精彩內(nèi)容,歡迎關(guān)注:

        視頻號
        視頻號

        抖音
        抖音

        快手
        快手

        微博
        微博

        PHP7 preg_replace出錯及解決辦法

        導(dǎo)讀在本篇文章里小編給大家整理的是一篇關(guān)于PHP7 preg_replace出錯及解決辦法,有需要的朋友們可以跟著學(xué)習(xí)下。e修飾符因為存在安全隱患,自5.3 開始就已經(jīng)標(biāo)記為了待移除的內(nèi)容。轉(zhuǎn)而接替的是 preg_replace_callback,此方法第二個參數(shù)為一個回調(diào)函數(shù),回調(diào)函數(shù)會自動傳入比配的分組作為參數(shù)。

        問題描述:

        PHP7廢棄了preg_replace?

        原本是中php5中處理url中后面參數(shù)替換清除的,代碼如下

        $url?=?preg_replace('/([?&])src=[^&]+(&?)/e',?'"$2"==""?"":"$1"',?$url);

        但是到php7中就報錯了

        需要用preg_replace_callback來替換,請問該咋辦?

        相關(guān)代碼

        $url?=?preg_replace('/([?&])src=[^&]+(&?)/e',?'"$2"==""?"":"$1"',?$url);
        問題分析:

        e修飾符因為存在安全隱患 自 5.3 開始就已經(jīng)標(biāo)記為了待移除的內(nèi)容。

        轉(zhuǎn)而接替的是 preg_replace_callback,此方法第二個參數(shù)為一個回調(diào)函數(shù),回調(diào)函數(shù)會自動傳入比配的分組作為參數(shù)。在回調(diào)函數(shù)內(nèi)部通過數(shù)組下標(biāo)訪問匹配組。

        preg_replace_callback('/([?&])src=[^&]+(&?)/',?function($matches){
        ????return?$matches[2]==""?"":$matches[1];
        },?$url);

        知識點擴展:

        PHP7已經(jīng)刪除了preg_replace的e修飾符

        官網(wǎng)提示是這樣的,對/e修飾符的支持已刪除。請改用preg_replace_callback()

        原因是/e 修正符使 preg_replace() 將 replacement 參數(shù)當(dāng)作 PHP 代碼(在適當(dāng)?shù)哪嫦蛞锰鎿Q完之后),會被一句話后門使用

        看看smarty中是也是這樣用的,也是存在問題

        $source_content?=?preg_replace($search.'e',?"'"
        .?$this->_quote_replace($this->left_delimiter)?.?'php'
        .?"'?.?str_repeat(\"\n\",?substr_count('\\0',?\"\n\"))?.'"
        .?$this->_quote_replace($this->right_delimiter)
        .?"'"
        ,?$source_content);
        可以把smarty模板修改成這個
        $source_content?=?preg_replace_callback($search,?function?($matches){
        $str="";
        $str.=$this->_quote_replace($this->left_delimiter)?.?'php';
        $str.=str_repeat("\\n\\",?substr_count($matches[1],?"\\n\\"));
        $str.=$this->_quote_replace($this->right_delimiter);
        return?$str;
        },?$source_content);

        到此這篇關(guān)于PHP7 preg_replace 出錯及解決辦法的文章就介紹到這了,希望大家以后多多支持好二三四!

        為你推薦
        資訊專欄
        熱門視頻
        相關(guān)推薦
        php判斷時間戳是否為今天實例講解 PHP實現(xiàn)JWT的Token登錄認(rèn)證 PHP中empty()和isset()的區(qū)別介紹 php去掉一維數(shù)組的鍵值的實例方法 php7安裝mysqli實例講解 PHP對接抖音開發(fā)平臺接口的詳細(xì)教程 PHP7中對十六進制字符串處理的問題詳解 php生成唯一uid的解決方法詳解 php兩種基本的輸出方及實例詳解 PHP遍歷數(shù)組的6種方式總結(jié) JS截取字符串的三種方法詳解 Python常用的正則表達式處理函數(shù)詳解 一文秒懂python正則表達式常用函數(shù) python正則表達式語法學(xué)習(xí)筆記 Python&nbsp;垃圾回收機制詳解 Python實現(xiàn)城市公交網(wǎng)絡(luò)分析與可視化 Python數(shù)據(jù)分析處理(三)--運動員信息的分組與聚合 基于Python實現(xiàn)PDF區(qū)域文本提取工具 詳解python的循環(huán) python實現(xiàn)新年倒計時實例代碼 五年班的學(xué)習(xí)計劃怎么寫 五年級的學(xué)習(xí)計劃 初中新學(xué)期學(xué)習(xí)計劃怎么寫 關(guān)于英語的學(xué)習(xí)計劃怎么寫 怎么寫暑假學(xué)習(xí)計劃書 4年級數(shù)學(xué)學(xué)習(xí)計劃怎么寫 后半學(xué)期的學(xué)習(xí)計劃怎么寫 上學(xué)期學(xué)習(xí)計劃怎么寫 五年級的學(xué)習(xí)計劃書怎么寫 小學(xué)一年級學(xué)習(xí)計劃怎么寫 暑假學(xué)習(xí)計劃表怎么寫 八年級學(xué)習(xí)計劃怎么寫 暑期學(xué)習(xí)計劃表怎么寫 小學(xué)四年級學(xué)習(xí)計劃怎么寫 一年級的學(xué)習(xí)計劃怎么寫 小學(xué)生的學(xué)習(xí)計劃怎么寫 工作的學(xué)習(xí)計劃怎么寫 初三學(xué)生學(xué)習(xí)計劃怎么寫 新學(xué)期語文學(xué)習(xí)計劃怎么寫 美國留學(xué)學(xué)習(xí)計劃怎么寫 出國留學(xué)學(xué)習(xí)計劃怎么寫
        Top