一、保留小数点后N位/类似四舍五入(以保留小数点后三位为准)
number_format()函数:第一个参数为要格式化的数字,第二个参数为保留的小数位数
方法一:
public function test()
{
$num = 12.56789; // 待格式化的数字
$result = number_format($num, 3); // 保留小数点后三位
echo $result; // 输出结果
}
结果:
方法二:
round()函数:第一个参数为要四舍五入的数字,第二个参数指定要保留的小数位数,这里设置为3,即保留小数点后三位。
public function test()
{
$num = 3.1415926; // 待四舍五入的数字
$result = round($num,3); // 保留小数点后两位
echo $result; // 输出结果
}
结果:
二、数字左侧补零(以六位数字为准)
sprintf()函数:%06d表示将数字格式化为6位,其中前面的0表示用0进行补全。
public function test()
{
$num = 123; // 待补零数字
$result = sprintf('%06d', $num); // 前补零,确保为4位
echo $result; // 输出结果
}
结果:
三、取整
intval($num):转换变量为整数类型
ceil($num):取向上整数
floor($num):取向下整数
除了 intval 函数,其他三种取整函数的参数必须是数值型。
public function test()
{
$num = 3.14;
//法一:转换变量为整型
$result1 = intval($num); //值为3
//法二:向上整数
$result2 = ceil($num); //值为4
//法二:向下整数
$result3 = floor($num); //值为3
//输出
echo "方法一结果:".$result1."\n"."方法二结果:".$result2."\n"."方法三结果:".$result3."\n";
}
结果:
四、格式化货币
number_format()
函数:可以将数字格式化为常见的添加千位分隔符的格式,并且可以设置小数点后保留的位数。
public function test()
{
$money = 12345.6789;
$formatted = '¥' . number_format($money, 2); // 输出:"¥12,345.68"
echo $formatted;
}
结果:
五、生成随机数
rand()函数:生成随机数,第一个参数为起始数据,第二个参数为终止数据
public function test()
{
$random1 = rand(1, 100); // 生成一个1到100之间的随机整数
$random2 = rand(100, 200); // 生成一个100到200之间的随机整数
echo "1到100之间的随机整数".$random1."\n";
echo "100到200之间的随机整数".$random2."\n";
}
结果:
六、数字与字母进行转换(要求1对应a)
ord
函数用于将字符转换为 ASCII 码
chr
函数用于将 ASCII 码转换为对应的字符
ASCII码表对应:A-65 ,a-97n
(1)数字转换为字母
public function test()
{
//目的1:要求将数字4转换为d
$num = 4;//需要转换的数字4
//通过ord将a转化为97,加上需要转化的数字4,再减去1(从97开始计算,需要减去1才能满足要求)
$result1 = chr(ord('a') + $num - 1);
//目的2: 要求将数字4转换为D
//输出结果
$result2 = chr(ord('A') + $num - 1);
echo "转为小写字母".$result1."\n";
echo "转为大写字母".$result2."\n";
}
结果 :
(2)字母转换为数字
public function test()
{
$letter = 'a';
//目的1:要求将a转换为1
$result1 = ord($letter) - ord('a') + 1;
//目的2: 要求将A转换为1
//由于大写字母与小写字母之间差值为32,则需要减去
$result2 = ord($letter) - ord('A') + 1 -32;
//输出结果
echo "小写字母转为".$result1."\n";
echo "大写字母转为".$result2."\n";
}
结果: