php数字字符串
① php:如何生成随机的唯一字母数字字符串
1. 自己写代码产生随机的数字和字母组合,每产生1个去数据库查询该随机码是否已存在,如果已存在,则重新产生,直到不重复为止。
缺点:产生速度慢,还要查询数据库,当数据量大的时候,可能重复的机率会比较高,要查询多次数据库.
2. guid,该方法应该是用的比较多的。
优点:使用简单方便,不用自己编写额外的代码
缺点:占用数据库空间相对较大,特别是根据guid查询速度比较慢(毕竟是字符串)。
3. 主键+随机码的方式,我们产生的随机码保存到数据库肯定会有个主键,用该主键+随机字符来组合。产生步骤:
1) 先从id生成器中获取id,比如是155.
2)填充成固定位数(比如8位)的字符串(不够位数的左边填0,超过位数直接使用该数字),得到:00000155
3)在每个数字后面随机插入1个字母或其它非数字符号,得到:0A0F0R0Y0H1K5L5M
这样就可以得到1个随机的唯一的邀请码了。
优点:使用也比较简单,不用查询数据库。最大的优点是查询的时候,可以根据邀请码直接得到主键id,然后根据id去数据库查询(速度很快),再比较查询出来的邀请码和用户提交的邀请码是否一致。
缺点:需要使用id产生器,如果主键是数据库自增长的就不太好用(需要先插入数据库获取id,再更新邀请码)。
4. 有时候产品经理说,我要求邀请码都是数字的。把方法3变通下就可以实现唯一的纯数字随机码了。
1) 获取id: 155
2) 转换成8进制:233
3) 转为字符串,并在后面加'9'字符:2339
4)在后面随机产生若干个随机数字字符:2003967524987
转为8进制后就不会出现9这个字符,然后在后面加个'9',这样就能确定唯一性。最后在后面产生一些随机数字就可以。
② php中怎么把数字转成字符串
应该使用printf,例子程序:
<?php
printf("%02d%02d",7,28);
?>
补充:
看来是我太毛躁了,我不知道你没有C语言基础,请看下面的例子:
<?php
$s=sprintf("%02d%02d",7,28);
echo$s;
?>
③ 在php中,怎样把数字转化为字符串
1、首先需要新建一个74.php。
④ PHP中字符串与数字拼接起来,用什么方法
有两个字符串(string)运算符。第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数之后。1.2.3.4.运行后发现只输出了一个 ‘3’,为什么呢? 因为第一字符串“Result3”被创建,这然后被添加到3得到3,非空非数字字符串被转换为0。如果要输出"Result: 6"
⑤ PHP数字字符串左侧补0,字符串填充和自动补齐的几种方法
这篇文章主要介绍了PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法,需要的朋友可以参考下
一、数字补0.
如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”、“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个功能。
方法一:
先构造一个数字10000000,千万,也就是一个1,7个0,然后加上当前的编号(比如是3),那么就得到 10000003,用字符串截取 substr('10000003',1,7)后就得到0000003,最后在与“d”拼接,就得到了最终的编号d0000003。
方法二:
测出当前编号(比如是3)的长度strlen('3')=1,用要生成编号的总长度减去当前编号长度,得到需要填充0的个数,然后再用for循环填充0即可。
⑥ php 如何仅计算字符串中的多个数字
可以按照如下方式实现:
<?php
function getNewStr($str) {
$newStr = '';
$a = '';
$b = '';
$flag = '';
for($i = 0; $i < strlen($str); $i++) {
// 如果是数字
if(preg_match("/^d*$/",$str[$i])) {
if ($flag == 'a' || $flag == '') {
$a = $a.$str[$i];
} else {
$b = $b.$str[$i];
}
} else {
$newStr = $newStr.$str[$i];
if ($flag == '') {
$flag = 'a';
$newStr = $newStr.'%d';
} else if ($flag == 'a') {
$flag = 'b';
$newStr = $newStr.'%d';
}
}
}
$newStr = sprintf($newStr, (int)$a*2, (int)$b*2);
return $newStr;
}
echo getNewStr('A15B25');
>?
代码图
用心回答,如果觉得有用请采纳并点个关注,感谢。
⑦ php 判断字符串数字
有两种方法
第一种:直接使用一个函数, is_numeric() 这个函数就是检测参数是否为数字,如果是就返回true,如果不是就返回false,比如:
1
2
<?php
is_numeric( 'abcd123' ) or die('提供的参数不是数字');
第二种:使用正则表达式匹配,匹配成功就是数字,返回true,匹配不成功就不是数字,返回false
比如:
1
2
<?php
<a href="https://www..com/s?wd=preg_match&tn=44039180_cpr&fenlei=-_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">preg_match</a>('/^\d+$/i', 'abcd123') or die('提供的数据不是数字');
⑧ php数字转字符串问题
substr("$str",0,4)."-".substr("$str",4,2)."-".substr("$str",6,2)."-".substr("$str",8,2)