第4章 数学运算

学习要点:

1.数值数据类型

2.随机数

3.格式化数据

4.数学函数

在大多数程序设计语言中,数值运算都是最基本的元素之一。数值运算允许程序员完成加法到高级计算等各种操作。尽管PHP只是设计为用于创建动态HTML文档,但如今它已经发展成为一门通用的编程语言,包括了一个强大而灵活的数学实现。

一.数值数据类型

PHP中,数字或数值数据以及数学函数的使用很简单。基本来说,要处理两种数据类型:浮点数和整数。浮点数和整数值的内部表示分别是C数据类型double和int。类似于C,PHP中这些数据类型遵循同样的一组规则。

PHP是一种松散类型的脚本语言,变量可以根据计算的需求改变数据类型。这就允许引擎动态地完成类型转换。所以,如果计算中包含数值和字符串,字符串会在完成计算之前转换为数值,而数值则会在与字符串连接之前转换为字符串。

<?php

$a = '5';

$b = 7 + $a;

echo "7 + $a = $b";

?>

PHP提供了大量函数来检查变量的数据类型。其中有3个函数可以检查变量是否包含一个数字值,或更具体地,可以检查变量是一个浮点数还是一个整数。

函数is_numeric()可以检查作为参数传入的值是否是数值。

函数is_int()和is_float()用于检查具体的数据类型。如果传入一个整数或浮点数,这些函数会返回true,否则返回false,即使传入一个有合法数值表示的字符串也会返回false。

也可以强制引擎改变数据类型。这称之为类型强制转换,可以在变量或值前面增加(int)、(integer)、(float)、(double)或(real)实现,也可以通过使用函数intval()或floatval()来实现。

二.随机数

随机数本身就是一门科学。已经有很多不同的随机数生成器实现。PHP实现了其中两种:rand()和mt_rand()。rand()函数是libc(构建PHP所用编译器提供的基本库之一)中定义的随机函数的一个简单包装器。mt_rand()是一个很好的替代实现,提供了很多精心设计的特性,而且mt_rand()甚至比libc中的版本还要快。

两个函数都提供一些函数来得到MAX_RAND的值。rand()的是getrandmax(),mt_rand()的是mt_getrandmax();

三.格式化数据

除了警告、错误等信息外,PHP的大部分输出都是利用echo、print()和printf()之类的函数生成的。这些函数将参数转换成一个字符串,并发给客户端应用程序。

number_format()函数可以把整数和浮点数值转换为一种可读的字符串表示。

<?php

$i = 123456;

$si = number_format($i,2,".",",");

echo $si;

?>

四.数学函数

abs() 绝对值

floor() 舍去法取整
ceil() 进一法取整

round() 四舍五入

min() 求最小值或数组中最小值

max() 求最大值数组中最大值

PS:过一遍手册函数库

PHP - 数学运算的更多相关文章

  1. Java学习笔记 06 数字格式化及数学运算

    一.数字格式化 DecimalFormat类 >>DecimalFormat是NumberFormat的子类,用于格式化十进制数,可以将一些数字格式化为整数.浮点数.百分数等.通过使用该类 ...

  2. 从零开始学习Node.js例子四 多页面实现数学运算 续二(client端和server端)

    1.server端 支持数学运算的服务器,服务器的返回结果用json对象表示. math-server.js //通过监听3000端口使其作为Math Wizard的后台程序 var math = r ...

  3. Linux shell 变量 数学 运算

    Abstract : 1)  Linux shell 中使用 let , [ ] ,(( )) 三种运算符操作 shell 变量进行简单的基本运算: 2)Linux shell 中使用 expr 与 ...

  4. 认真学习shell的第一天-数学运算

    shell中的数学运算有三种方式: (1)let,用let的时候,变量名称前不用添加$ (2)[],[]中变量可使用也可不使用$ (3)(())变量名之前必须添加$

  5. 6 让我们的C#程序开始做点数学运算

    请相信我你只需要懂得最基本的数学运算,就可以从事大多数的软件项目的开发工作.千万不要一提编程,就让数学把你吓跑了.大多数的程序开发人员从事的编程工作是应用系统的开发.这些系统的绝大多数功能,只需要最基 ...

  6. shell编程之数学运算

    shell数学运算支持整数运算的四种方法 1.let命令 no1=4; no2=5; let result=no1+no2 2.[]操作符 result=$[ no1 + no2] 3.(())操作符 ...

  7. 玩转变量、环境变量以及数学运算(shell)

    变量和环境变量    var=value  给变量赋值,输出语句:$ echo $var或者是$ echo ${var},记住中间有个空格 例如:name="coffee" age ...

  8. css3 calc():css简单的数学运算-加减乘除

    css3 calc():css简单的数学运算–加减乘除 多好的东西啊,不用js,一个css就解决了. .box{ border:1px solid #ddd; width:calc(100% - 10 ...

  9. Linux Shell 数学运算

    Linux Shell 数学运算 在Linux中直接使用数学运算符进行数学运算往往得不到我们想要的计算结果.要在Shell中进行数学运算,我们需要借助点小手段.目前,Linux Shell中进行数学运 ...

  10. 在终端(Terminal)里用命令行进行数学运算

    有时候我们进行一些数学运算,我们会去开系统自带的计算来做这件事情,其实我们也可以直接在终端里面用命令行进行的. 在命令行里敲 bc 进入数学计算模式,然后随便输入数学表达式 回车 ,结果就出来了,是不 ...

随机推荐

  1. Java中 hashCode()方法详解

    先来看下Object源码里hashcode方法: /**     * Returns a hash code value for the object. This method is      * s ...

  2. r语言之给定的概率密度函数生成随机数

    假设概率密度函数为: 思路: 首先产生-1到1之间的均匀分布随机数x,和0到1之间的均匀分布随机数y. 如果y<f(x),则x是符合该概率密度的随机数,否则,重复上述操作. 用r语言生成100个 ...

  3. 初遇Git与MarkDown 文件

    新年好! 昨晚熬夜在学Git,稍微会了一些命令. 推荐大家去try.github.io上学习,这是GitHub提供的网页,它在网页提供了一个“伪”模拟器,根据网页的提示学习命令.网页上说15分钟就能学 ...

  4. stl源代码剖析:编译器的提前定义位置集设置

    眼下我的工作环境还是win.全部演示也用VS或者cygwin这些环境作为基础. 1.配置项目的附加include目,添加提前定义位置集设置,编译器会把它添加include路径,比方在某个目录中定义一个 ...

  5. 【NGROK】快速实现本地Web服务到外网的映射

    NGROK官网:https://ngrok.com NGROK百科:http://baike.baidu.com/view/13085941.htm?fr=aladdin 使用ngrok(Window ...

  6. Android:Service的注意点以及一些知识点

    1.自己练习service的start()方法开启一个service服务的时候,不管怎么开启按钮,就是开启不了service服务,控制台也没有报错信息, app不闪退,代码就那么几行.找了好久找不出来 ...

  7. centos6.5 mysql安装+远程访问+备份恢复+基本操作+卸载

    参考博文: Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置 MySQL修改root密码的多种方法 MySQL的备份与还原 解决mysql导入还原时乱码的问题 ...

  8. media_root以及static_root配置

    # At the top of settings/base.pyfrom os.path import join, abspath, dirnamehere = lambda *x: join(abs ...

  9. svn修改log信息

    在linux下安装了SVN服务器来做版本控制. 有天提交文件忘记了填写SVN提交日志,于是在项目中使用右键,show log,找到我提交的无日志的那条记录,点击右健,选择了“Edit log mess ...

  10. Python标准库:内置函数repr(object)

    本函数是返回对象object的具体说明字符串. 样例: #repr() print(repr(range(5))) print(repr(help)) print(repr(0x200)) print ...