2011-04-18 148 views
12
$stringText = "[TEST-1] test task 1 Created: 06/Apr/11 Updated: 06/Apr/11"; 
$splitArray = split(" ",$stringText); 

推薦使用:功能拆分()是用C棄用:\ WAMP \ WWW \ RSS.php第27行「函數split()已棄用」在PHP中?

爲什麼這個錯誤發生?

+8

http://php.net/manual/en/function.split.php - 請在這裏提問前閱讀文檔。 – Mat 2011-04-18 06:10:41

+0

請啓用'html_errors'和'docref_root'在你的php.ini – mario 2011-04-18 06:17:19

+0

可能重複的[PHP拆分替代?](http://stackoverflow.com/questions/2813241/php-split-alternative) – 2012-03-28 23:15:23

回答

33

http://php.net/manual/en/function.split.php

從手動

警告此功能已經 從PHP 5.3.0開始已經棄用。依託 此功能非常氣餒

注:

在PHP 5.3.0中,正則表達式擴展 贊成PCRE 擴展已被棄用。調用此函數將 發出E_DEPRECATED通知。請參閱 差異列表以獲得關於 轉換爲PCRE的幫助。

我想你應該使用替代preg_split()。或者,如果您不使用正則表達式,只需使用explode

1

因爲該功能已被棄用?您可以自定義error_reporting級別以不記錄/顯示折舊錯誤。但它會更謹慎,只是糾正問題(IE改用爆炸你在上面做簡單的拆分。)

8

拆分已被替換爲explode,請參閱http://php.net/explode以獲取更多信息。與split相同,但split是'deprecated',基本上意味着這是一個不應該再使用的舊函數,並且不可能在更高版本的php中使用。

+7

實際上,'split'和「爆炸」有點不同。 '爆炸'不支持正則表達式,因此替換函數將是'preg_split' – JohnP 2011-04-18 06:11:54

+1

'explode'適用於我,而不是'preg_split' – 2015-10-05 17:44:43

4

使用下面的爆炸功能:

$command = explode(" ", $tag[1]); 

這是這種情況的標準解決方案。 它完美的工作。