首页 > 编程知识 正文

实现类似php函数number(php类方法和函数)

时间:2023-12-24 12:05:36 阅读:320625 作者:MFMA

本文目录一览:

请高手帮个忙,在php中number_format() 的功能是什么,怎么用,如果可以请给我几个实例,致上!

number_format() 函数通过千位分组来格式化数字。

特别注意:该函数支持一个、两个或四个参数(不是三个)。

?php

echo number_format("5000000")."br";

echo number_format("5000000",2)."br";

echo number_format("5000000",2,",",".");

//运行后的结果

5,000,000

5,000,000.00

5.000.000,00

?

语法:

number_format(number,decimals,decimalpoint,separator)

参数说明:

number    必需。要格式化的数字。如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。

decimals    可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。  

decimalpoint    可选。规定用作小数点的字符串。  

separator    可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。注释:如果设置了该参数,那么所有其他参数都是必需的。

如何实现 php 在线取号

取号的用户需要登录他自己的账号吗?如果需要,那要判断一下,这个用户是否已经取号?

如果不需要,那么就和银行一样,一个人可能会取多次号。

与银行类似,可以设计一个数据库表格:get_number

id(主键,自增),

日期(取号当天有效),

获取的号码(不可以重复),

获取时间,

当前正在处理的号码(用此字段判断还要等候多少人)

如果是用户登录之后的操作,可以再加一个字段:用户名(或者其他的可以唯一判断一个用户的字段)。

当一个用户来到取号页面,点击某个按钮,比如:“取号”,那么你就到数据库里面获取当前最大的号码,然后加1,再把取号的相关字段插入到数据库中,就完成取号了。

只是大概思路,可以根据你的需求来详细的编写程序

PHP实现数字补零功能的2个函数介绍

在PHP中至少有两个函数能够帮助我们快速实现数字补零:

首先是PHP

str_pad函数:

复制代码

代码如下:#str_pad

使用另一个字符串填充字符串为指定长度

顾名思义这个函数是针对字符串,对指定的字符串填补任何其它的字符串

str_pad参数说明:

复制代码

代码如下:string

str_pad

(

string

$input

,

int

$pad_length

[,

string

$pad_string

=

"

"

[,

int

$pad_type

=

STR_PAD_RIGHT

]]

)

#常用参数说明:str_pad(带填补的字符串,填补后的长度,填补字符串,填补位置)

其中填补后的长度必须是个正整数,填补位置有三个选项,

左边:STR_PAD_LEFT

右边:STR_PAD_RIGHT

两端:STR_PAD_BOTH

实例展示:

复制代码

代码如下:echo

str_pad(1,8,"0",STR_PAD_LEFT);

#结果:00000001

echo

str_pad(1,8,"0",STR_PAD_RIGHT);

#结果:10000000

echo

str_pad(1,8,"0",STR_PAD_BOTH);

#结果:00010000

在上边的例子中值得注意的一个细节是,如果填补的位数是个奇数,例如例三中填补了7个0,右边优先。

下面再看下补零的另外一种方法:

PHP

sprintf函数:

复制代码

代码如下:#sprintf

返回一个格式化字符串

这个函数用起来比较灵活,有待学者们深挖,这里主要讲实现数值左边补零(或者在小数点后补零)的处理方式;

先看左边补零

复制代码

代码如下:echo

sprintf("%05d",1);

#

%05d的意思:用一个5位数的数字格式化后边的参数,如果不足5位就补零

#

运行结果是00001

再看小数点后补零

复制代码

代码如下:echo

sprintf("%01.3f",1);

#

%01.3f的意思:用一个小数点后最少三位不足三位补零,小数点前最少一位,不足一位补零的浮点数格式化后边的参数

#

运行结果是:1.000

另外还可以自己编写一个自定义函数进行处理;

编写代码各有所优也有所劣,大家可以任选适合的;

注:sprintf能够保证不至于误操作把1补成1000000,str_pad可以保证想补啥补啥。

自定义名为Number的类,用于实现两个数字的四则运算。PHP!在线等!急!

?php

class Number{

private $na;

private $nb;

private $symbol;

private $result;

function __construct(){

}

public function getResult($_na,$_nb,$_symbol){

$this-na = $_na;

$this-nb = $_nb;

$this-symbol = $_symbol;

switch ($this-symbol)

{

case '+':

  $this-symbol = '+';

  echo "$this-na + $this-nb = ". $this-result = $this-na + $this-nb;

  

  break;  

case '-':

  $this-symbol = '-';

  echo "$this-na - $this-nb = ". $this-result = $this-na - $this-nb;

  break;

case '*':

  $this-symbol = '*';

  echo "$this-na * $this-nb = ". $this-result = $this-na * $this-nb;

  break;

case '/':

  $this-symbol = '/';

   $this-check($this-nb);

  break; 

default:

  $this-symbol = '+';

  echo "$this-na + $this-nb = ". $this-result = $this-na + $this-nb;

}

}

private function check($_nb){

$this-nb = $_nb;

if($this-nb==0){

echo "除数不能为零!";

}else{

echo "$this-na / $this-nb = ". $this-result = $this-na / $this-nb;

}

}

}

$js = new Number();

$js-getResult(3,2,"*"); //符号 为  + - * /

?

用php使数字保留小数点后两位怎么做的?

PHP 中的 round() 函数可以实现

round() 函数对浮点数进行四舍五入。

round(x,prec)

参数说明

x 可选。规定要舍入的数字。

prec 可选。规定小数点后的位数。

返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec 也可以是负数或零(默认值)。

注释:PHP 默认不能正确处理类似 "12,300.2" 的字符串。

例如:

?php

echo round(-4.635,2);

?

输出: -4.64

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。