如果這是一個非常愚蠢的問題,或者一個明顯的新手錯誤 - 但我最基本的是,我幾乎從來沒有用過do - while循環之前(我知道 - 我可以不是自己理解!我怎麼可能設法避免它所有這些年??)PHP條件循環 - 字符串長度
所以: 我想從文本段落的開頭選擇一些單詞。 我用下面的代碼:
$no_of_char = 70;
$string = $content;
$string = strip_tags(stripslashes($string)); // convert to plaintext
$string = substr($string, 0, strpos(wordwrap($string, $no_of_char), "\n"));
哪個作品的種類,但問題是,有時它給空的結果。 我認爲這是因爲該段落包含空格,空行和/或回車... 所以我試圖做一個循環條件,將繼續嘗試,直到字符串的長度至少爲X個字符。 。
$no_of_char = 70; // approximation - how many characters we want
$string = $content;
do {
$string = strip_tags(stripslashes($string)); // plaintext
$string = substr($string, 0, strpos(wordwrap($string, $no_of_char), "\n")); // do not crop words
}
while (strlen($string) > 8); // this would be X - and I am guessing here is my problem
好 - 顯然這是行不通的(否則這個問題就不會) - 現在它總是產生什麼(空字符串)
謝謝,你的方法也完美的作品。不幸的是,我只能接受一個。 +1 :-) –
DUDE。你的方法效果很好。甚至比Kolink解決方案更好。沒有什麼是錯的 - 但它在記憶上更加重要,甚至超時執行。不知何故,你的方法更有效率。謝謝 ! (和..我學到了一個新的功能(str_word_count()) - :-) –