今天一个客户要批量生成400电话,起始位置是10000号,开始我直接生成就出现了如10004的号码但是商人都不喜欢这个数字,所在说过滤尾数是4的数字,我想一下利用substr($str,-1)==4就可以实现了,下面看代码。
- include("cn.php");
- $Db = new Db();
- $sql ="select * from 表名 where isnew=1";
- $query = $Db->query( $sql );
- $rs = $Db->fetch( $query ,0);
- $i=10000;
- foreach( $rs as $v => $vv )
- {
- if( substr($i,-1)==4 )
- {
- $i++;
- }
- $sql ="update 表名 set txtiphone= '$i' where id=".$vv['id'];
- if( $Db->query( $sql ) )
- {
- $i++;
- }
- }
- echo '批量更新完成';
关于substr()函数
语法:substr(string,start,length)
参数与描述:string 必需,规定要返回其中一部分的字符串。
start:必需,规定在字符串的何处开始,正数 - 在字符串的指定位置开始,负数 - 在从字符串结尾的指定位置开始,0 - 在字符串中的第一个字符处开始.
length:可选,规定要返回的字符串长度,默认是直到字符串的结尾,正数 - 从 start 参数所在的位置返回,负数 - 从字符串末端返回. |