当前位置: 首页 > news >正文

thinkphp:数值(保留小数点后N位,四舍五入,左侧补零,格式化货币,取整,生成随机数,数字与字母进行转换)

一、保留小数点后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";}

 结果:

http://www.lryc.cn/news/62837.html

相关文章:

  • 用Flutter你得了解的七个问题
  • Nmap使用手册
  • 基于ResNet-attention的负荷预测
  • 华为校招机试 - 批量初始化次数(20230426)
  • WhatsApp CRM:通过 CRM WhatsApp 集成向客户发送消息
  • SOLIDWORKS Electrical无缝集成电气和机械设计
  • Numpy从入门到精通——数组变形|合并数组
  • DJ4-5 路由算法:LS 和 DV
  • python图像处理之形态学梯度、礼帽、黑帽
  • 千万级直播系统后端架构设计
  • ImageJ 用户手册——第五部分(菜单命令File,Edit)
  • nmap常用命令
  • 常用adb 命令
  • 后端开发常犯的问题(Java版)
  • Vue CLI 部署
  • 客快物流大数据项目(一百一十七):网关 Spring Cloud Gateway
  • fMRI时间序列振幅和相位对功能连接分析的影响
  • 备战2个月,四轮面试拿下字节offer...
  • 关于Nginx
  • tensorflow中的共享变量
  • flink cep数据源keyby union后 keybe失效
  • python中的继承与多态,dir()函数
  • C++练级之初级:第五篇
  • JMeter的使用(二)
  • C/C++文件操作/IO流
  • 推荐 7 个超牛的 Spring Cloud 实战项目
  • Linux信号:信号 信号集 信号集函数
  • 详解八大排序算法-附动图和源码(插入,希尔,选择,堆排序,冒泡,快速,归并,计数)
  • 网络编程--协议、协议族、地址族
  • Linux入门操作