【风马一族_php】NO4_php基础知识
?原文來自:http://www.cnblogs.com/sows/p/6017018.html(博客園的)風馬一族 侵犯版本,后果自負
?
回顧
運算符:算術運算符、邏輯運算符、比較運算符、位運算符、賦值運算符、字符串運算符、自操作運算符、錯誤抑制符、三元運算符
位:二進制、原碼、反碼、補碼
流程控制:順序、分支、循環
分支結構:if分支 和 switch分支
switch:每個case最后面都會跟上break
switch:適合固定值的處理,不適合條件運算處理
if :?適合處理條件運算方面的處理
循環結構:for?、 while?、 do-while?、 foreach
` 函數:系統函數和自定義函數
調用:函數名(),系統一旦碰到一個值后面跟了括號,系統就會把內存里的內容讀出來,當做函數去執行
定義函數:function 函數名(形式參數列表) {?
//函數休
? //返回值
}
function myfunc($name) {?//函數體 }
myfunc($name,$age,$sex......);?? //PHP支持實際參數比形式參數數量多,多余的部分,系統放棄了使用,而只獲取形參對應的數量,對應的位置 ?
參數傳遞:值傳遞,引用傳遞
值傳遞:將外部變量的值,復制一份,賦值給形參
引用傳遞:將外部變量所指向的內存空間的地址,賦值給形參
function myfunc(&$name){?//函數體 }?????? //添加?地址符 &
myfunc($name) //不能使用地址符&
作用域:全局作用域和局部作用域
全局作用域:函數外部可以使用
局部作用域:函數內部使用
函數內部使用外部變量:$GLOBALS("變量名"),global關鍵字
=============================================================
任務
計算器
1 ========================================= 2 html 使用表單,做出來基本的計算器的界面 3 ========================================= 4 <html> 5 <head> 6 <meta http-equiv="content-type" content="text/html;charset=utf-8"> 7 </head> 8 9 <body> 10 <form method="POST" action=""> 11 <input type="text" name="first" size="5"/> 12 <select name="opr"> 13 <option value="+">+</option> 14 <option value="-">-</option> 15 <option value="*">*</option> 16 <option value="/">/</option> 17 <option value="%">%</option> 18 </select> 19 <input type="text" name="second" size="5"/> 20 <span>=</span> 21 <input type="text" /> 22 <input type="submit" nam="submit" value="提交" /> 23 </form> 24 </body> 25 26 27 ========================================= 28 使用PHP計算表單提交的內容 29 ========================================= 30 <html> 31 <head> 32 <meta http-equiv="content-type" content="text/html;charset=utf-8"> 33 </head> 34 <?php 35 //PHP計算器 36 //可以輸入兩個數值,可以選擇操作符號,返回計算結果 37 //要在當前直接顯示結果,還要保護用戶的操作 38 39 if(!isset($_POST['submit'])){ 40 //直接訪問 41 }else{ 42 //提交數據,進行運算 43 $first = $_POST['first']; 44 $second = $_POST['second']; 45 $opr= $_POST['opr']; 46 47 //計算結果,先初始化為0 48 $res=0; 49 50 //根據操作符來計算結果 51 switch($opr){ 52 case '+': 53 $res= $first + $second; 54 break; 55 case '-': 56 $res= $first - $second; 57 break; 58 case '*': 59 $res= $first * $second; 60 break; 61 case '/': 62 $res= $first / $second; 63 break; 64 case '%': 65 $res= $first % $second; 66 break; 67 } 68 } 69 ?> 70 <body> 71 <form method="POST" action=""> 72 <input type="text" name="first" size="5" value="<?php echo isset($first)?$first:''; ?>" /> <--!PHP語句的作用:提交后,顯示用戶輸入的數據 --> 73 <select name="opr"> 74 <option value="+" <?php echo isset($opr)?(($opr=='+')?'selected="selected"':''):''?>>+</option> 75 <option value="-" <?php echo isset($opr)?(($opr=='-')?'selected="selected"':''):''?>>-</option> 76 <option value="*" <?php echo isset($opr)?(($opr=='*')?'selected="selected"':''):''?>>*</option> 77 <option value="/" <?php echo isset($opr)?(($opr=='/')?'selected="selected"':''):''?>>/</option> 78 <option value="%" <?php echo isset($opr)?(($opr=='%')?'selected="selected"':''):''?>>%</option> 79 </select> 80 <input type="text" name="second" size="5" value="<?php echo isset($second)?$second:''; ?>" /> <--!PHP語句的作用:提交后,顯示用戶輸入的數據 --> 81 <span>=</span> 82 <input type="text" readonly disabled size="5" value="<?php echo isset($res)?$res:''; ?>" /> <!--readonly 只讀(禁止輸入) disabled 失去光標--> <--!PHP語句的作用:提交后,顯示運算的結果 --> 83 <input type="submit" name="submit" value="提交" /> 84 </form> 85 </body> 86 87 ============================================= 88 PHP語句說明 89 90 //提交數據后,運算符會默認選擇第一個符號 91 //為了讓提交數據,顯示用戶提交時選擇的運算符,而使用selected="selected" 92 //本程序主要使用PHP來編寫計算器,因此使用如下語句,【可以使用JS等來實現,也是允許】 93 <?php echo isset($opr)?(($opr=='+')?'selected="selected"':''):''?> 94 95 //從php中,接收php運算的結果 96 value="<?php echo isset($res)?$res:''; ?>" 97 php--計算器
九九乘法
1 <?php 2 //函數內進行乘法法則的運算 3 function calculator($rows){ 4 for($row=1;$row<=$rows;++$row){ 5 for($col=1;$col<=$row;++$col){ 6 echo "$row * $col = ".($row*$col)."\t"; 7 } 8 echo "<br />"; 9 } 10 } 11 12 //調用函數,傳遞的行數為12[大于0的整數] 13 calculator(9); 14 ?> 15 16 結果(示例) 17 1 * 1 = 1 18 2 * 1 = 2 2 * 2 = 4 19 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 20 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 21 5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25 22 6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36 23 7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49 24 8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64 25 9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81 php--九九乘法
?
?
=============================================================
匿名函數
定義:沒有名字的函數
語法:變量名 = function(參數列表) {//函數體};
問題:1、沒有名字的函數如何定義???
函數的定義在編輯階段,會被系統存放到代碼區,會有一個內存地址,需要通過變量來保存函數的內存地址
? 2.沒有名字的函數如何調用
1.調用函數必須有括號,函數的調用實際是在棧里開辟內存空間,把函數體給加載進來,逐行執行。
2.通過變量保存的函數的內存地址,來講函數給取出放到棧里
3.告訴系統,取出來的數據是一個函數,系統需要當做函數來處理,增加一個括號
?
匿名函數的作用?
1.是一種允許的語法結構
2.一般是用于函數的參數(主要) ?
1 <?php 2 3 //定義匿名函數,將函數賦值給變量 4 $name=function(){ 5 return "風馬一族"; 6 }; 7 8 //調用匿名函數 9 echo $name(); 10 ?> php--匿名函數的使用示例
方法: 使用function(){//函數體} 定義函數
$name = function(){//函數體}; ? ? //將函數賦給變量,記得加上分號? ;
? $name(); ?? //給變量加上括號 ()? ,相當于讓系統承認它是一個函數,而不是變量
=============================================================
偽類型
mixed : 說明一個參數可以接受多種不同的(但不一定是所有的)類型
例如: gettype() 可以接受所有的PHP類型? //獲取變量的類型?? http://php.net/manual/zh/function.gettype.php
str_replace()可以接受字符串和數組
number : 說明一個參數可以是integer 或者 float
callback : 回調類型
示例代碼
1 <?php 2 3 function myfunc($func_name,$name='東京'){ 4 5 $name .= '你好'; 6 7 $func_name($name); 8 } 9 10 function display($welcome){ 11 echo $welcome." you are sows"; 12 } 13 14 myfunc('display','淘寶'); 15 16 ?> php--回調示例代碼?
?
void:? 1 作為返回類型意味著函數的返回值是無用的。
? 2 作為參數列表意味著函數不接受任何參數
?????? ...? : 在函數原型中,$... 表示等等的意思,當一個函數可以接受任意個參數時使用此變量名
=============================================================
?可變函數
可變變量:將一個變量的值當做一個變量的名字,從而去獲取另個變量的值 $$變量名
可變函數,通過一個變量,獲取其對應的變量值,然后通過給該值增加一個括號(),讓系統認為該值是一個函數,從而當作函數來執行
?
1 <?php 2 3 function display(){ 4 //函數體 5 } 6 7 $var = 'display'; 8 9 $var(); 10 11 ?> php--可變函數的示例?
1 <?php 2 3 //自定義函數 4 function sows(){ 5 6 return "you are sows"; 7 } 8 9 //將自定義函數的名稱,賦給變量 10 $name="sows"; 11 12 //給變量添加(),讓系統來把變量,當作函數來使用 13 echo $name(); 14 ?> php--可變函數的使用示例?
=============================================================
數據類型轉換
指的是將數據(變量)的值轉換成目標數據類型
PHP中有兩種數據類型轉換方式:自動轉換、強制轉換
?
1. 自動轉換:系統根據操作所需要的類型將變量的值進行對應類型的轉換
????????? 自動轉換都是系統本身所做的事情,不需要用戶去干預
2. 強制轉換: 根據具體的需求,將變量的值事先轉換成所需的數據類型
int? integer : 整型,將數據轉換成整型?
bool? Boolean: 將數據值換成布爾值
float : 轉換成浮點型
string : 轉換成字符型
array :轉換成數組類型
object : 轉換成對象類型
語法: (數據類型)變量
1. var_dump 把變量的類型及長度還有數據值都輸出
2. 通過函數gettype函數,獲得數據的類型,返回一個字符串
疑問:為什么會兩種變量類型 , float? or double?
設置數據類型:settype($var,'類型') ? 《======》 ? (類型)$var;
示例
規則如下:
1.? 字符串只有以數值或者小數點開始的時候,系統才會有可能將字符串進行數值轉換,要不然直接轉換成0
2. 若出現一個英文句號,則把句號后面的數字視為小數部分
4. 只讀取前面連續的數值,沒有字母或者其他特殊字符
3. 只讀取一個句號
4.如果有小數點最終保留,那么數據類型變成浮點型,否則是整型
=============================================================
判斷數據類型
PHP提供了一些函數來判斷數據的類型,函數都是以is_開頭,后面跟數據類型。
如果是目標類型則返回true , 否則返回false;
//標量
is_scalar 檢測變量是否是一個標量
is_array ? 檢測變量是否是數組
is_bool?? 檢測變量是否是布爾型
is_float 檢測變量是否是浮點型
is_real 此函數是 is_float() 的別名函數
is_integer 檢測變量是否是整型
is_long 檢測變量是否是整型
is_finite 判斷是否為有限值
is_infinite 判斷是否為無限值
is_object 檢測變量是否一個對象
is_subclass_of 如果此對象是該類的子類,則返回 TRUE
is_numeric 檢測變量是否為數字或數字字符串
is_string 檢測變量是否是字符串
is_tainted 檢查字符串是否被污染(被修改)
?
//特殊
is_null 檢測變量是否是空值
is_resource 檢測變量是否為資源類型
?
//文件
is_writable 判斷給定的文件名是否可寫
is_file 判斷給定文件名是否為一個正常的文件
is_readable 判斷給定文件名是否可讀
is_uploaded_file 判斷文件是否是通過 HTTP POST 上傳的
is_link 判斷給定文件名是否為一個符號連接
is_dir 判斷給定文件名是否是一個目錄
is_executable — 判斷給定文件名是否可執行
?
//無分類
is_callable 檢測參數是否為合法的可調用結構
is_soap_fault? 檢查SOAP調用是否失敗
is_nan 判斷是否為合法數值
iis_set_app_settings 創建虛擬目錄的應用程序作用域
示例? php是弱類型的,因此 1 相當true
?
文件包含
1.網站網頁的分層設計,將不同的數據(一些公共的顯示數據),整理出來,形成一個單獨的文件。只需要在其他html代碼界面中,需要用到的時候,直接包含(加載)。
案例
1. 所有內容在一個頁面
?
1:所有內容分成多個頁面存放
index.php
header.php footer.php
? ? ? ??
?
2.代碼的重用:PHP所寫的函數功能,類文件、配置文件等。在需要應用這些代碼的時候,直接將文件給包含即可
語法: <?php include '文件的路徑'? ?>
文件包含 include、include_once、require、require_once,將一個文件的內容包含進另外一個文件。
include、require 使用一次包含一次文件?
include_once、require_once 腳本中包含另個腳本多次,但只加載一次
include 語句包含并運行指定文件,若找不到文件,會提示警告,并繼續運行【E_WARNING】
require 語句包含并運行指定文件,若找不到文件,會提示錯誤,并終止運行【E_COMPILE_ERROR】
示例: include使用示例
? include出錯的表現
require的使用示例
? require出錯的表現
?
? 連接數據庫的示例
index.php? 主頁
public.php? 連接數據庫的指令
mysql.php 保存數據庫的連接信息
?
?文件的包含路徑
文件路徑有兩種:絕對路徑和相對路徑
絕對路徑:從磁盤根目錄到文件所在的目錄
相對路徑:文件相對當前文件所在的位置,相當一個參照物(一般就是文件 )
?
1.相對路徑表示方式:
./ :表示當前目錄
../? :表示上級目錄
? / ? :網站根目錄
2.文件嵌套包含
絕對路徑
好處:在文件嵌套包含中不會出現問題
壞處:修改文件位置時,需要修改文件的路徑
相對路徑
壞處:在文件嵌套包含中易出現問題
好處:文件路徑修改,比較簡單
注意:文件嵌套包含時,使用絕對路徑較佳
?
終止腳本執行
終止腳本執行,指的是通過一條語句告訴PHP引擎,此語句之后的其他語句不需要執行。
PHP提供了三種方式來終止腳本執行:return、die、exit
return : 執行到該處退出,如果是在函數中,表示退出函數,如果是在腳本中,表示腳本停止執行。
函數的return是返回函數調用的地方,腳本的return是返回給腳本被包含的地方。
示例 return方式
======================
php04_index.php :包含文件,用來包含其它的文件
php03_return.php? :被包含,而且將自身資源返回給包含文件
==========================
die的方式
===========================
exit
===========================
基于以上可能,所以PHP的配置文件(項目配置文件:數據庫的連接信息信息等),采用以上方式
?
?系統函數
字符串函數
strlen: 計算字符串的長度
語法:strlen("字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='You are sows'; 5 6 $name="我是中國人"; 7 8 var_dump(strlen($str)); 9 var_dump(strlen($name)); 10 11 ?> 12 13 ==================================== 14 結果: 15 int(12) //$str='You are sows'; 十個字母 = 兩個空格 =12 16 17 int(15) //$name="我是中國人"; 五個漢字 *3 =15 18 19 ==================================== 20 說明: 21 gbk | gb2312 編碼里, 中文占用兩個字節 22 23 utf-8 編碼里,中文占用三個字節 php--strlen-計算字符串的長度?
==============
substr : 獲取字符串中的子字符串
語法:substr("字符串",截取的起始位置,截取長度); ? ? ? //截取長度需要根據編碼的字節占用量來考慮
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='You are sows'; 5 6 $name="我是中國人"; 7 8 var_dump(substr($str,0,2)); 9 var_dump(substr($name,3,3)); 10 11 ?> 12 ========================== 13 結果: 14 string(2) "Yo" //截取的位置從0開始,字節長度為2 15 string(3) "是" //截取的位置從3開始,字節長度為3 16 17 ========================== 18 說明: 19 1. 字符串的字符位置:是從左到右用0開始計算 20 21 2. 一個字符在不同編碼規范中,占用字節數不同, 22 因此,截取長度需要根據編碼進行考慮。 23 例如:在ascll中截取5個字符,截住長度是5 24 在utf-8中截取5個字符,截取長度是15 25 26 php--substr-獲取子字符串?
==============
strtolower:將字符串轉化為小寫
語法:strtolower("字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='You Are sows'; 5 6 var_dump(strtolower($str)); 7 8 ?> 9 10 結果: 11 string(12) "you are sows" //有大寫變小寫,沒有的,不用管 php--strtolower-大寫變小寫?
==============
strtoupper: 將字符串轉化為大寫
語法:strtoupper("字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='You Are sows'; 5 6 7 8 var_dump(strtoupper($str)); 9 10 ?> 11 12 ============================== 13 結果: 14 string(12) "YOU ARE SOWS" //把小寫的部分轉成大寫 php--strtoupper-小寫轉成大寫?
==============
ucfirst :將字符串的首字母轉換為大寫
語法:ucfirst("字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='you are sows'; 5 6 7 8 var_dump(ucfirst($str)); 9 10 ?> 11 12 ======================= 13 結果: 14 string(12) "You are sows" //適合處理英文的文章 php--ucfirst-首個字母轉成大寫?
==============
strrev :反轉字符串
語法:strrev("字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='you are sows'; 5 6 $number="1234567890"; 7 8 $name = "我吃飯"; 9 10 var_dump(strrev($str)); 11 var_dump(strrev($number)); 12 var_dump(strrev($name)); 13 14 ?> 15 16 =================== 17 結果: 18 string(12) "swos era uoy" //反轉 “you are sows” 19 20 string(10) "0987654321" //反轉 “1234567890” 21 22 string(9) "��鄶呈�" //反轉 “"我吃飯” 23 24 =================== 25 說明: 26 反轉是從右到左,一個字節為單位進行跳轉位置的 27 28 而字母、數字是以一個字節進行儲存的,因此,顯示出我們想要的結果, 29 30 而中文需要三個字節進行儲存的,與反轉的作法有所不利,于是,顯示所謂的亂碼 php--strrev-反轉?
==============
strrpos: 計算指定字符串在目標字符串中最后一次出現的位置
語法:strrpos("字符串","子字符串");
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='you are sows'; 5 6 $str1='you are sows or are ceo'; 7 8 var_dump(strrpos($str,'are')); 9 10 var_dump(strrpos($str1,'are')); 11 12 ?> 13 14 ============================= 15 結果: 16 int(4) //'are'在'you are sows'中的,最后位置 17 18 int(16) //'are'在 'you are sows or are ceo'中的,最后位置 19 20 ============================= 21 說明: 22 一般不單獨使用,會其它代碼進行結合一起使用 php--strrpos-計算子字符串在字符串中的最后一個位置?
?
==============
strrchr:?根據(最后一次出現的)子字符串來截取后半字符串
語法:strrchr("字符串",'子字符串');
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str='you are sows'; 5 6 $str1='you are sows or are ceo'; 7 8 var_dump(strrchr($str,'o')); 9 10 var_dump(strrchr($str1,'are')); 11 12 ?> 13 14 ======================== 15 結果: 16 string(3) "ows" //截取'you are sows'中的 “ows” 17 18 string(7) "are ceo" //截取 'you are sows or are ceo' 19 20 ======================== 21 說明: 22 根據子字符串來截取后半部分的字符串 php--strtchr-根據子字符串來截取后半字符串?
==============
trim:去除字符串首尾處的空白字符(或者其他字符)
?
1 <?php 2 header('Content-type:text/html;charset=utf-8'); 3 4 $str=' you are sows '; 5 6 var_dump(strlen($str)); 7 8 var_dump(trim($str)); 9 10 ?> 11 12 ==================== 13 結果: 14 int(16) //字符串原來的效果 15 16 string(12) "you are sows" //去除字符串的空格后效果 php--trim-去除語句前后多余的空格、柳式?
?
時間函數
php中時間通常用整型存儲
1. time : 得到當前時間的時間戳,是一個整型數據
語法: time();
1 <?php 2 echo time(); 3 ?> 4 5 ================= 6 結果: 7 1478138859 //動態的數值 8 9 ================= 10 這個時間戳 11 從 1970/01/01 00:00:00 開始計算 12 單位是:秒 php--time-時間戳?
================
2.設置時區
1.? date.timezone? :設置默認時區 ?
2.? date_default_timezone_set : 設定用于一個腳本中所有日期時間函數的默認時區
語法:date_default_timezone_set("表示時區的字符串");
例子:date_default_timezone_set('PRC'); ? //中國時區
3.? date_default_timezone_get :取得一個腳本中所有日期時間函數所使用的默認時區?
================
3. date:時間戳按以一定的格式進行轉化
語法:date("格式化的關鍵字符",時間戳[可選]);
1 <?php 2 date_default_timezone_set('PRC'); //設置時區,防止編譯器找不到時區 3 4 var_dump(date('y-m-d h:i:s')); 5 6 var_dump(date('y-m-d',time())); 7 8 var_dump(date('T')); 9 ?> 10 11 ================== 12 結果: 13 string(17) "16-11-03 10:29:58" //使用系統默認的時間戳,按年月日 時分秒的格式輸出 14 15 string(8) "16-11-03" //設置時間戳,按年月日的格式,輸出時間 16 17 string(3) "CST" //獲取當前的時區 php--date-格式化時間?
================
4.strtotime:?將任何英文文本的日期時間描述解析為 Unix 時間戳
語法:strtotime("描述時間的語句");
1 <?php 2 date_default_timezone_set('PRC'); 3 4 var_dump(strtotime('2016-08-04')); 5 6 var_dump(strtotime('Saturday')); //星期六 7 8 var_dump(strtotime('tomorrow')); //明天 9 10 var_dump(strtotime('next month')); //下個月 11 12 ?> 13 14 ======================== 15 結果: 描述時間的語句轉化成時間戳表示 16 int(1470240000) 17 18 int(1478275200) 19 20 int(1478188800) 21 22 int(1480733304) php--strtotime-描述時間的語句轉成時間戳?
?
================
5.microtime: 返回當前 Unix 時間戳和微秒數 ?? //有點問題
語法:microtime("")
1 <?php 2 date_default_timezone_set('PRC'); 3 4 var_dump(microtime('2016-08-04')); 5 6 var_dump(strtotime('2016-08-04')); 7 8 ?> 9 10 ===================== 11 結果: 12 float(1478141641.4529) // 13 14 int(1470240000) // 15 16 ===================== 17 提問: 整數部分。為什么不同 php--microtime-返回當前 Unix 時間戳和微秒數?
數學函數
abs: 絕對值
acos: 反余弦
acosh:反雙曲余弦
asin: 反正弦
asinh: 反雙曲正弦
atan: 反正切
atanh:反雙曲正切
atan2: 兩個參數的反正切
=================
base_convert: 在任意進制之間轉換數字
bindec: 二進制轉換為十進制
=================
ceil: 進一法取整
cos: 余弦
cosh: 雙曲余弦
=================
decbin: 十進制轉換為二進制
dechex: 十進制轉換為十六進制
decoct: 十進制轉換為八進制
deg2rad: 將角度轉換為弧度
=================
exp: 計算e的指數
expm1: 返回exp(nubmer) -1,甚至當number的值接近零也能計算出準確結果
=================
floor: 舍去法取整
fmod: 返回除法的浮點數余數
=================
getrandmax: 顯示隨機數最大的可能值
=================
hexdex: 十六進制轉換為十進制
hypot: 計算直角三角形的斜邊長度
=================
intdiv: 對除法結果取整
is_finite: 判斷是否為有限值
is_infinite: 判斷是否為無限值
is_nan: 判斷是否為合法數值
=================
lcg_value: 組合線性同余發生器
log10: 以10為底的對數
log1p: 返回log(1*number),甚至當number的值接近零也能計算出準確結果
log: 自然對數
=================
max: 找出最大值
min: 找出最小值
mt_getrandmax: 顯示隨機數的最大可能值
mt_rand: 生成更好的隨機數
mt_srand: 播下一個更好的隨機數發生器種子
=================
octdec: 八進制轉換為十進制
=================
pi: 得到圓周率值
pow: 指數表達式
=================
rad2deg: 將弧度數轉換為相應的角度數
rand: 產生一個隨機整數
round: 對浮點數進行四舍五入
=================
sin: 正弦
srand: 播下隨機數發生器種子
=================
tan: 正切
tanh: 雙曲正切
=================
語法:數學函數(數字)?? //參數視函數而定,
例如: abs(-65456); ? //獲取 -65456的絕對值
pi();?? //獲取圓周率
1 <?php 2 $number = -3432; 3 4 var_dump(abs($number)); //取絕對值 5 6 var_dump(decbin($number)); //十進制轉換為二進制 7 8 var_dump(dechex($number)); //十進制轉換為十六進制 9 10 var_dump(decoct($number)); //十進制轉換為八進制 11 12 var_dump(is_nan($number)); //判斷是否為合法數值 13 14 15 ?> 16 17 =================== 18 結果: 19 int(3432) //取絕對值 20 21 string(32) "11111111111111111111001010011000" //十進制轉換為二進制 22 23 string(8) "fffff298" //十進制轉換為十六進制 24 25 string(11) "37777771230" //十進制轉換為八進制 26 27 bool(false) //判斷是否為合法數值 php--math-數學函數使用示例?
==================
?
轉載于:https://www.cnblogs.com/sows/p/6017018.html
總結
以上是生活随笔為你收集整理的【风马一族_php】NO4_php基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS10 CallKit简单开发
- 下一篇: 读《图解HTTP》总结--第九章