[英]Splitting strings with regular expression in PHP
有人可以告訴我為什么我得到的結果不同於書嗎?
這是代碼
<?php
$address = "username@example.com";
$arr = split ("\.|@", $address);
while (list($key, $value) = each($arr))
{
echo "<br/>".$value;
}
?>
這是書說你應該得到的結果
username
@
example
.
com
這是我在計算機上嘗試代碼時得到的信息
Deprecated: Function split() is deprecated in C:\Apache24\htdocs\test3.php on line 3
username
example
com
自PHP 5.3.0起不推薦使用split()
函數。
請改用preg_split()
。
其用法與split()
相同。
這本書是錯誤的,因為您不應該自己獲取分隔符,而只能獲取它們之間的“單詞”。
該警告是由於split()
即將終止而改用preg_split()
,因此您應該將其替換為
$arr = preg_split ('/\.|@/', $address);
以防止警告。
我建議您僅先用@
分割,然后再用分割域名.
,否則您將不知道foo.bar@example.com
還是foo@bar.example.com
導致
foo
bar
example
com
結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.