2012-12-19 113 views
2

我需要匹配80%左側字符上的一些字符串。我可以使用len(),然後找出那個長度的80%,並將其設置爲變量。然後我可以做substr($var, 0, $len80)PHP解析字符串左側字符的剩餘字符

這應該選擇80%的字符串,但是我是在2個循環中,我必須在雙方都這樣做,我希望有一個更好的方式來做到這一點。任何人都知道選擇一定比例的字符串更容易和更有效?

UPDATE

我最後做它像這樣$a2 = substr($a, 0, (strlen($a) * .80));

相同的概念只是沒有設置多個變量。

+1

你在2個循環中的含義是什麼,而且我必須在兩邊都做,你可以添加一些代碼嗎? – Baba

+0

我認爲你錯了,你在這個問題上有問題。代碼將運行得非常快,而其他任何函數都將不可避免地需要更多時間。 – user1122069

回答

2

抓住左80%是非常簡單的:

$string = "This is my string"; 
$length = strlen($string); 

echo substr($string, 0, $length * .8); 

從中間抓50%,由25%的起始位置偏移量:

$result = substr($string, $length * .25, $length * .5); 

// Outputs '...is my s...' 
echo "..." . trim($result) . "..."; 

演示:http://codepad.org/EZnoo2SZ

+1

感謝您的幫助。我用了這個變化。 – Sequenzia