🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## **保留字符串前面的和后面的** substr($str,start\[,$length\]); start  为负数 则从后面开始截取 leng为负数则返回的字符串将从 $str 结尾处向前数第 start 个字符开始 ~~~ $str='1234:46789'; $len=strlen($str); $pos=strpos($str,':'); //保留:前面的 substr($str,0,$pos); substr($str,-($len),-($len-$pos));// 截取完 从后面开始的第(10-4=6)个还是显示 //保留;后面的: $pos=strpos("ARP49203_P050-FITC",'-'); $sku_search=substr("ARP49203_P050-FITC",$pos+1);//FITC substr("ARP49203_P050-FITC",$pos);//-FITC $str="1/3/5/99"; $a=substr($str, strrpos($str, '/') + 1);//99 ~~~ ## **将大驼峰转为小写加_** ``` $model='\app\common\model\FooBar'; $pos=strripos($model,'\\'); $str=substr($model,$pos+1); $tableName=strtolower(preg_replace('/(?<=[a-z])([A-Z])/', '_$1', $str)) ``` ## **判断正整数** is_int等函数如果接受的参数的是字符串格式的数字则会返回false,is_numeric则可以接受字符串类型的数字 ``` $keyword = '10'; // 0 1.1 1 if(preg_match("/^[1-9][0-9]*$/",$keyword)){ echo "是正整数!"; exit(); } if ((floor($jp_total) - $jp_total) !==0){ echo "不是正整数"; }else{ echo "是正整数"; } if(!is_numeric($jp_total)||strpos($jp_total,".")!==false){ echo "不是整数"; }else{ echo "是整数"; } ``` ## **位不足用指定的字符串补齐** ``` /** * 位不足0补齐 * @param [type] $num [description] * @param integer $len [description] * @return [type] [description] */ function formatZero($num, $len=2, $pad_str="0") { $strlen=strlen(strval($num)); if ($strlen > $len) { return $num; } $value=str_repeat($pad_str, bcsub($len, $strlen)).$num; return $value; } ```