<?php
/*
* 需要分别处理字符串中的各个字节
* 逐字节处理字符串
*/
$string = "This weekend, I‘m going shopping for a pet chicken.";
$vowels = 0;
for($i = 0, $j = strlen($string); $i<$j; $i++){
if(strstr(‘aeiouAEIOU‘, $string[$i])){
$vowels++;
}
}
function lookandsay($s)
{ /*
* 1211
* $m = 1
* $n = 1
* $r = 11
* $m = 2
* $n = 1
*/
//将返回值初始化为一个空字符串
$r = ‘‘;
//$m包含要统计的字符,初始化为字符串中的第一个字符
$m = $s[0];
//var_dump($m);die;
//$n是已经查看过的$m的个数,初始化为1
$n = 1;
//如果这个字符与上一个相同
for ($i = 1,$j = strlen($s);$i<$j;$i++){
//如果这个字符与上一个相同
if( $s[$i] == $m){
$n++;
} else {
//否则将$n字符个数和字符本身$m追加到返回值
$r .= $n .$m;
//该找下一个字符了,把要找的字符设置为当前的字符
$m = $s[$i];
//并重新把数目重置为1
$n = 1;
}
}
return $r.$n.$m;
}
$s= 1;
for ($i = 0 ; $i < 10; $i++) {
$s = lookandsay($s);
echo "$s<br>";
}
1.4逐字节处理字符串
原文:http://www.cnblogs.com/renchenglong-real/p/5004782.html