# 查找字符串函數 ereg和eregi
>[success]查找字符串用到ereg()和eregi()兩個函數,它們的用法和參數均相同,唯一的區別是:eregi()函數忽略大小寫。
##函數原型
~~~
int ereg/eregi ( string $pattern , string $string [, array &$regs ] )
~~~
>[info]ereg()函數的作用是:如果找到與$parttern中圓括號內的子模式相匹配的子串并且函數調用給出了第三個參數$regs,則匹配項將被存入$regs數組中。$regs[1]包含第一個左圓括號開始的子串,$regs[2]包含第二個子串,以此類推。$regs[0]包含整個匹配的字符串。而eregi函數作用一樣,僅時忽略大小寫。
## 返回值
>[info]如果在字符串中找到模式匹配,則返回匹配字符串的長度,如果未找到匹配或出現錯誤,則返回false。
## 典型實例
~~~
<?php
date_default_timezone_set('Asia/Shanghai');
$date=date("Y-m-d",time());
echo $date."\n";
if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) {
echo "$regs[3].$regs[2].$regs[1]";
} else {
echo "Invalid date format: $date";
}
~~~
### 輸出結果

## 注意
>[danger]ereg()函數是嚴格區分大小寫的;而eregi()函數是不區分大小寫的。當有第一個參數時,匹配的字符串將會存儲到第三個數組中,基沒有第三個參數,這兩個函數如果出錯或者沒有找到匹配的字符串,則返回false,如果找到字符串,則返回找到的匹配的字符串的長度。
- 前言
- PHP獲取服務器信息
- PHP中的常用函數-新手必備知識
- 日期時間相關的函數
- 時區設置
- time函數
- strtotime 時間戳
- date函數
- mktime函數
- 聯合使用 date() 和 mktime()
- PHP數據類型相關的函數
- PHP數組相關的函數
- array函數
- 數組的排序
- sort()和rsort()函數
- asort()和arsort()函數
- ksort()和krsort()函數
- array_multisort()函數
- array_reverse函數
- 數組的遍歷
- 數組中新增和刪除元素
- 數組頭部插入和刪除元素
- 數組尾部插入和刪除元素
- 刪除數組中重復的元素
- 刪除數組中指定的元素
- 數組的合并
- 隨機/打亂已知數組
- range函數
- 數組去除重復
- PHP常用功能函數
- URL地址處理函數
- post/get請求
- PHP字符串相關的函數
- PHP文件系統
- PHP正則表達式
- 正則表達式語法規則
- POSIX擴展的正則表達式函數
- 查找字串函數
- 替換字符串函數
- Perl兼容的正則表達式函數
- PHP中類的應用
- 中文編碼
- 關于stdClass
- 變量相關函數
- unset
- PHP數值相關的函數
- 數值取整
- 開發工具與開發環境使用技巧
- sublime
- 常用插件
- Atom
- 常用插件
- 常見問題
- Visual Studio Code
- vscode常用插件
- 編程推薦字體
- MAC下開發常識
- MAC下的常用設置
- MAC下的常用開發工具
- MAC下XAMMP的常見問題
- Apache配置基礎
- PhpStrom
- php中的常見問題
- 文件上傳相關問題
- API接口中常見問題
- 關于緩沖區問題
- PHP中注意事項
- 條件判斷
- PHP文件管理模塊
- 文件管理源碼
- 文件管理的常用函數
- 文件管理中文亂碼處理
- 自定義功能函數
- 文件下載
- PHP常用頭信息定義匯總
- 常見PHP網頁木馬
- 加密算法
- 1. Base58可逆加密
- 2. AES加密/解密
- mysql數據庫操作
- 命令行操作Mysql常用令行-查詢
- 命令行操作Mysql常用令行-操作
- Mysql使用中的技巧
- 在線數據庫管理中常用命令
- sql show命令
- mysql數據庫的備份與恢復
- 二進制日志介紹
- 二進制日志常用命令
- ThinkPHP
- 數據遷移
- 常見問題
- 驗證碼問題
- API接口中的異常處理
- API接口安全
- 解決跨域問題
- 自定義實用功能函數