php 根据要求得到字符串的反序
<?php
/**
* 根据要求得到字符串的反序
*/
$s = 'abcdefghijklmnopq';
function Reverse_order($str,$start = null,$end = null)
{
$string = '';
$string1 = '';
$string2 = '';
if ($start === null or $end === null)
{
for ($i = 0; ($char = $str{$i}) !== '';$i++)
{
$string = $char.$string;
}
//var_dump($string);
}
if ((!is_int($start) or !is_int($end)) and $start !== null and $end !== null) //将用户输入为数字字符串转化为整型
{
//如果是字母或者汉字转化后$start $end 都为0
$start = (int)($start);
$end = (int)($end);
if ($start < 0)
{
trigger_error("起始值不能小于0",256);
return false;
}
}
if (is_int($start) and is_int($end))
{
for ($j = 0;$j < $start;$j++)
{
$string1 .= $str{$j};
}
for ($i = $start;$i < $end;$i++)
{
$string = $str{$i}.$string;
}
for ($k = $end; ($char = $str{$k}) !== ''; $k++)
{
$string2 .= $str{$k};
}
}
/*if (!is_int($start ) or !is_int($end))
{
trigger_error("请输入数字",512);
return false;
}*/
return $string1.$string.$string2;
}
$start = 0;
var_dump(
Reverse_order($s,$start,10),
Reverse_order($s,5,15),
Reverse_order($s,'10','15'),
//Reverse_order($s,'-5','15'), //为负数的字符串转化后是负数
Reverse_order($s,'df','sd'),
Reverse_order($s,'的','地方'), //不是为数字的字符串转化为整型后的是指都为零
Reverse_order($s)
);
作者:k7gxn56