PHP數(shù)學(xué)運(yùn)算與數(shù)據(jù)處理實(shí)例分析
本文實(shí)例講述了PHP數(shù)學(xué)運(yùn)算與數(shù)據(jù)處理方法。分享給大家供大家參考,具體如下:
一.?dāng)?shù)值數(shù)據(jù)類型
PHP中,數(shù)字或數(shù)值數(shù)據(jù)以及數(shù)學(xué)函數(shù)的使用很簡(jiǎn)單?;緛碚f,要處理兩種數(shù)據(jù)類型:浮點(diǎn)數(shù)和整數(shù)。浮點(diǎn)數(shù)和整數(shù)值的內(nèi)部表示分別是C數(shù)據(jù)類型double和int。類似于C,PHP中這些數(shù)據(jù)類型遵循同樣的一組規(guī)則。
PHP是一種松散類型的腳本語(yǔ)言,變量可以根據(jù)計(jì)算的需求改變數(shù)據(jù)類型。這就允許引擎動(dòng)態(tài)地完成類型轉(zhuǎn)換。所以,如果計(jì)算中包含數(shù)值和字符串,字符串會(huì)在完成計(jì)算之前轉(zhuǎn)換為數(shù)值,而數(shù)值則會(huì)在與字符串連接之前轉(zhuǎn)換為字符串。
<?php $a = '5'; $b = 7 + $a; echo "7 + $a = $b"; ?>
PHP提供了大量函數(shù)來檢查變量的數(shù)據(jù)類型。其中有3個(gè)函數(shù)可以檢查變量是否包含一個(gè)數(shù)字值,或更具體地,可以檢查變量是一個(gè)浮點(diǎn)數(shù)還是一個(gè)整數(shù)。
函數(shù)is_numeric()可以檢查作為參數(shù)傳入的值是否是數(shù)值。
函數(shù)is_int()和is_float()用于檢查具體的數(shù)據(jù)類型。如果傳入一個(gè)整數(shù)或浮點(diǎn)數(shù),這些函數(shù)會(huì)返回true,否則返回false,即使傳入一個(gè)有合法數(shù)值表示的字符串也會(huì)返回false。
也可以強(qiáng)制引擎改變數(shù)據(jù)類型。這稱之為類型強(qiáng)制轉(zhuǎn)換,可以在變量或值前面增加(int)、(integer)、(float)、(double)或(real)實(shí)現(xiàn),也可以通過使用函數(shù)intval()或floatval()來實(shí)現(xiàn)。
二.隨機(jī)數(shù)
隨機(jī)數(shù)本身就是一門科學(xué)。已經(jīng)有很多不同的隨機(jī)數(shù)生成器實(shí)現(xiàn)。PHP實(shí)現(xiàn)了其中兩種:rand()和mt_rand()。rand()函數(shù)是libc(構(gòu)建PHP所用編譯器提供的基本庫(kù)之一)中定義的隨機(jī)函數(shù)的一個(gè)簡(jiǎn)單包裝器。mt_rand()是一個(gè)很好的替代實(shí)現(xiàn),提供了很多精心設(shè)計(jì)的特性,而且mt_rand()甚至比libc中的版本還要快。
兩個(gè)函數(shù)都提供一些函數(shù)來得到MAX_RAND的值。rand()的是getrandmax(),mt_rand()的是mt_getrandmax();
三.格式化數(shù)據(jù)
除了警告、錯(cuò)誤等信息外,PHP的大部分輸出都是利用echo、print()和printf()之類的函數(shù)生成的。這些函數(shù)將參數(shù)轉(zhuǎn)換成一個(gè)字符串,并發(fā)給客戶端應(yīng)用程序。
number_format()函數(shù)可以把整數(shù)和浮點(diǎn)數(shù)值轉(zhuǎn)換為一種可讀的字符串表示。
<?php $i = 123456; $si = number_format($i,2,".",","); echo $si; ?>
四.?dāng)?shù)學(xué)函數(shù)
abs() 絕對(duì)值
floor() 舍去法取整
ceil() 進(jìn)一法取整
round() 四舍五入
min() 求最小值或數(shù)組中最小值
max() 求最大值數(shù)組中最大值
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語(yǔ)法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP高精確度運(yùn)算BC函數(shù)庫(kù)實(shí)例詳解
- PHP幾個(gè)數(shù)學(xué)計(jì)算的內(nèi)部函數(shù)學(xué)習(xí)整理
- PHP數(shù)學(xué)運(yùn)算函數(shù)大匯總(經(jīng)典值得收藏)
- php常用數(shù)學(xué)函數(shù)匯總
- PHP使用數(shù)組實(shí)現(xiàn)矩陣數(shù)學(xué)運(yùn)算的方法示例
- PHP入門教程之?dāng)?shù)學(xué)運(yùn)算技巧總結(jié)
- 第四章 php數(shù)學(xué)運(yùn)算
- php 數(shù)學(xué)運(yùn)算驗(yàn)證碼實(shí)現(xiàn)代碼
- PHP常見數(shù)學(xué)函數(shù)及BC高精度數(shù)學(xué)函數(shù)用法示例
相關(guān)文章
如何在舊的PHP系統(tǒng)中使用PHP 5.3之后的庫(kù)
這篇文章主要介紹了如何在舊的PHP系統(tǒng)中使用PHP 5.3之后的庫(kù),需要的朋友可以參考下2015-12-12
在php中判斷一個(gè)請(qǐng)求是ajax請(qǐng)求還是普通請(qǐng)求的方法
如何在php中判斷一個(gè)網(wǎng)頁(yè)請(qǐng)求是ajax請(qǐng)求還是普通請(qǐng)求?你可以通過傳遞參數(shù)的方法來實(shí)現(xiàn),例如使用如下網(wǎng)址請(qǐng)求2011-06-06
php調(diào)用mysql數(shù)據(jù) dbclass類
php調(diào)用mysql數(shù)據(jù)數(shù)據(jù)庫(kù)操作類,dbclass類,需要的朋友可以參考下。2011-05-05
關(guān)于Anemometer圖形化顯示MySQL慢日志的工具搭建及使用的詳細(xì)介紹
這篇文章主要介紹了關(guān)于Anemometer圖形化顯示MySQL慢日志的工具搭建及使用的詳細(xì)介紹,Anemometer 是一個(gè)圖形化顯示MySQL慢日志的工具,Anemometer可以很輕松的幫你去分析慢查詢?nèi)罩荆屇愫苋菀拙湍苷业侥男㏒QL需要優(yōu)化。感興趣可以來了解一下2020-07-07
PHP 進(jìn)度條函數(shù)的簡(jiǎn)單實(shí)例
這篇文章主要介紹了PHP 進(jìn)度條函數(shù)的簡(jiǎn)單實(shí)例的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-09-09
php中使用__autoload()自動(dòng)加載未定義類的實(shí)現(xiàn)代碼
當(dāng)PHP引擎遇到未實(shí)例化的類時(shí)就會(huì)觸發(fā)這個(gè)方法,當(dāng)然你的php代碼中要用到__autoload()才可以哦2013-02-02
深入file_get_contents函數(shù)抓取內(nèi)容失敗的原因分析
本篇文章是對(duì)file_get_contents函數(shù)抓取內(nèi)容失敗的原因進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06

