2011-05-07 96 views
1

你好我有一個非常NOOB的問題,我想知道答案。首先我的編程語言是VB6,有我可以使用分割方法像PHP,但主要尊重是,當我使用此代碼:PHP拆分字符串

$page_array = split('12s12d1a351c12a55a', 'a', 0); 
echo count($page_array); 

我得到的結果爲「1」,其中我必須得到超過1。所以錯在哪裏?你可以幫我嗎?

回答

0

你是設置你的極限爲0,因此,你將檢索整個字符串作爲1號線(沒有裂痕) 刪除,0將拆分聲明,也實在是(分隔符,字符串)不(字符串分隔符) - > PHP有一些向後命令

嘗試:

$ page_array =分裂( '一個', '12s12d1a351c12a55a'); echo count($ page_array);這應該產生

:4

+0

感謝它幫 – Volter 2011-05-07 16:36:09

+0

@Shakti辛格良好的漁獲物的棄用,諷刺的是我用爆炸所有的時間,甚至沒有抓住答案的那一部分!獎勵! – 2011-05-07 16:41:29

+0

爲什麼使用exmplode比split更好? – Volter 2011-05-07 16:45:17

2

首先,分割()已過時。看看docs

另外:你用最後一個參數來限制結果。

array split (string $pattern , string $string [, int $limit = -1 ]) 
1

如果limit被設置,則返回的數組 將最大極限的含有 元素與包含字符串的整個其餘部分的最後一個元素 。

這是因爲你的限制設置爲0,不使用split它已被棄用嘗試explode代替

$page_array = explode('a','12s12d1a351c12a55a'); 
echo count($page_array); 
+0

感謝兄弟幫助!!!! – Volter 2011-05-07 16:37:16

1

它要檢查手工是很重要的。 split()的PHP手冊很有用。

你的代碼應該是:$page_array = split('a', '12s12d1a351c12a55a');

2

如果你檢查你看,你將限制設置爲0的文檔: http://php.net/manual/en/function.split.php

split (string $pattern , string $string [, int $limit = -1 ]) 

與爆炸正確的方式(最好丹分) :

$page_array = explode('12s12d1a351c12a55a', 'a'); 
echo count($page_array);