如何在PHP中抽取前100个字符的string
我正在寻找一种方法来拉出stringvariables的前100个字符,以放入另一个variables进行打印。
有没有一个function可以轻松做到这一点?
例如:
$string1 = "I am looking for a way to pull the first 100 characters from a string variable to put in another variable for printing."; $string2 = 100charfunction($string1); print $string2
要得到:
I am looking for a way to pull the first 100 characters from a string vari
$small = substr($big, 0, 100);
对于string操作,这里是一个有很多function的页面,可以帮助你在将来的工作。
你可以使用substr,我猜:
$string2 = substr($string1, 0, 100);
或mb_substr多字节string:
$string2 = mb_substr($string1, 0, 100);
你可以创build一个函数来使用这个函数,并附加实例'...'
来表明它被缩短了。 (我猜这个post已经有100多个类似的回复了…)
试试这个function
function summary($str, $limit=100, $strip = false) { $str = ($strip == true)?strip_tags($str):$str; if (strlen ($str) > $limit) { $str = substr ($str, 0, $limit - 3); return (substr ($str, 0, strrpos ($str, ' ')).'...'); } return trim($str); }
$ x ='1234567'; echo substr($ x,0,3); //输出123 echo substr($ x,1,1); //输出2 echo substr($ x,-2); //输出67 echo substr($ x,1); //输出234567 echo substr($ x,-2,1); //输出6
一个晚但有用的答案,PHP有一个专门为此目的的function。
mb_strimwidth
$string = mb_strimwidth($string, 0, 100); $string = mb_strimwidth($string, 0, 97, '...'); //optional characters for end
没有php内部函数:
function charFunction($myStr, $limit=100) { $result = ""; for ($i=0; $i<$limit; $i++) { $result .= $myStr[$i]; } return $result; } $string1 = "I am looking for a way to pull the first 100 characters from a string variable to put in another variable for printing."; echo charFunction($string1);