bxhcsz
新手上路

UID 92095
精华
0
积分 49
帖子 47
金钱 49 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2007-4-27
状态 离线
|
[推荐阅读] 一个http的问题
<?php
/* 该函数返回字符串s1在字符串s2中第一次出现的位置.
如果s2中不包含s1,则返回0
*/
function InStr($s1, $s2)
{
//检查参数是否是字符串格式,若不是则返回0
if(!(is_string($s1) && is_string($s2))) return 0;
$s1len = strlen($s1);
$s2len = strlen($s2);
//检查s1是否包含在s2中
if(!ereg($s1, $s2)) return 0;
//若s1s2精确匹配,返回1
if($s1 == $s2) return 1;
//设置搜索范围$begin-$end
$begin = 0;
$end = $s2len - $s1len;
//初始化位置
$position = 0;
while($end > $begin + 1)
{
$middle = ceil(($begin + $end) / 2);
$leftBegin = $begin;
$rightBegin = $middle + $s1len;
$leftEnd = $middle;
$rightEnd = $end + $s1len;
if(ereg($s1, substr($s2, $leftBegin, $rightBegin - $leftBegin)))
{
$end = $middle;
}
else //(ereg($s1, substr($s2, $leftEnd, $rightEnd - $leftEnd)))
{
$position += $middle - $begin;
$begin = $middle;
}
}
if(ereg($s1, substr($s2, $end, $s1len))) $position++;
//返回第一次出现的位置
return $position + 1;
}
echo instr("as","中国deah方法as");
?>
|  <?php新人,幻想在坛子里学到各位大牛的精髓,某天李彦宏请我出山,可我就不去....... |
|