多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > php 數據類型和變量

php 數據類型和變量

來源:程序員人生   發布時間:2014-03-11 08:47:11 閱讀次數:2452次

php是弱類型的,一個變量不需要預先聲明,也不需要指定類型,php中變量是$加上變量名,php的變量是區分大小寫的,例如上例中的 $my='my'.

php支持的變量類型包括:布爾型,整型,浮點型,字符串,數組和對象,前四種很常用,也和其他語言類似,不多做介紹,數組和對象后文具體介紹。 

php中有函數來檢測對象的類型,它們是 getttype。gettype返回一個string,它的值可以是array,boolean,double,integer,object,resource,string 和 unknow type. php也支持顯式的類型轉換,語法和c類似。 

轉換操作符,轉換為 

(array) 數組 

(bool) (boolean) 布爾型 

(int) (integer) 整數 

(object) 對象 

(float),(double),(real) 浮點數 

(string) 字符串 

例如,代碼如下:

  1. <?php  
  2. $str ='a string';  
  3. $num=15;  
  4. $numstr='123.3';  
  5. echo gettype($str),'<br/>';  
  6. echo gettype($num),'<br/>';  
  7. echo gettype($numstr),'<br/>';  
  8. $numstr=(float)$numstr;  
  9. echo gettype($numstr);  
  10. ?> 

輸出結果為:

  1. string  
  2. integer  
  3. string  
  4. double 

還有函數可以用來判斷一個變量是不是某種類型,例如 is_array(),is_bool()等等,用法都類似。

函數和變量作用域,php聲明函數的方法很簡單,形式如下: 

  1. function functionname(parameters){  
  2. function body  

不需要指定返回類型,括號中也不需要指定變量類型,只要有變量名就可以,例代碼如下:

  1. <?php  
  2. function taxedprice($price,$taxrate){  
  3. return $price*(1+$taxrate);  
  4. }  
  5. echo taxedprice(100, 0.03);  
  6. ?> 

默認情況下,php是按值傳遞參數的,在函數內改變參數的值并不會改變函數外變量的值,但是php也支持按引用傳遞,語法和c一致,&$paramname,例如,下面一個經典的例子: 

  1. <?php  
  2. function swap1($x,$y){  
  3. $t=$x;$x=$y;$y=$t;  
  4. }  
  5. function swap2(&$x,&$y){  
  6. $t=$x;$x=$y;$y=$t;  
  7. }  
  8. $a=3;$b=5;  
  9. swap1($a,$b);  
  10. printf("a is %d, b is %d <br/>",$a,$b);  
  11. swap2($a,$b);  
  12. printf("a is %d, b is %d <br/>",$a,$b);  
  13. ?> 

輸出結果:

a is 3, b is 5 

a is 5, b is 3

php的函數還支持參數的默認值,語法和c也是一樣的,例如,代碼如下:

  1. <?php  
  2. function taxedprice($price,$taxrate=0.03){  
  3. return $price*(1+$taxrate);  
  4. }  
  5. echo taxedprice(100);  
  6. ?> 

下面介紹變量的作用域,php的變量作用域和c很類似,有局部變量,函數參數,全局變量,靜態變量4種,局部變量就是在函數內聲明的變量,函數參數是在函數首部聲明的變量;不在函數中聲明的變量是全局變量,全局變量可以在任何地方訪問到,但是和c不同的是,如果在函數中要修改全局變量的值需要用global關鍵字顯式指定它是全局變量,否則php就會聲明一個同名的局部變量并且覆蓋它。例如,代碼如下:

  1. <?php  
  2. $taxrate=0.03; //global  
  3. function change1() {  
  4. $taxrate+=1;  
  5. }  
  6. function change2() {  
  7. global $taxrate;  
  8. $taxrate+=1;  
  9. }  
  10. change1();  
  11. echo $taxrate,'<br/>';  
  12. change2();  
  13. echo $taxrate,'<br/>';  
  14. ?> 

輸出的結果是:0.03 ,1.03

php還有一種超級全局變量,超級全局變量是由php系統預定義的,主要用來訪問與環境有關的信息,例如當前用戶會話,用戶操作環境和本地環境等,超級全局變量是一個數組,例如$_server中存儲了服務器相關的信息。$_get,$_post,$_files,$_cookie中分別存儲了客戶端采用get提交,和post的提交的信息,上傳的文件,cookie信息等。這些變量的使用都很簡單,需要什么信息只需要查找

變量的變量

和c一類的靜態語言不同,php的變量名本身可以是一個變量,這對于需要動態生成很多變量的時候是很便利的,例如,代碼如下:

  1. <?php  
  2. $r="hello";  
  3. $$r="i am hello";  
  4. echo $hello;  
  5. ?> 
  6. //輸出結果為: i am hello 

流程控制語句

主要包括,if else, while,for,do while,switch. 這些和c語言都很像,基本是一致的,不多做介紹,有些不同,php的 elseif是一個關鍵字,是連在一起的,而c語言是else if

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 一区二区三区免费观看 | 久久性妇女精品免费 | 在线亚洲精品国产成人二区 | 视频一区二区在线 | 亚洲无线乱码高清在线观看一区 | 亚洲欧美日本韩国 | 亚洲色图小说 | 在线中文字幕一区 | 久久天天| 国产一区二区在线观看免费 | 亚洲a级| 欧美片欧美日韩国产综合片 | 中文字幕视频一区二区 | 亚洲欧美综合在线观看 | 亚洲性一区 | 五月天综合网 | 色噜噜狠狠先锋影音久久 | 日本午夜视频在线 | 91福利国产在线观看香蕉 | 国产在线成人一区二区 | 亚洲第一成年网 | 成人区精品一区二区不卡亚洲 | 中文字幕免费观看视频 | 亚洲综合三区 | 爱就操| 亚洲视频大全 | 福利视频一区二区 | 中文字幕成人在线 | 国产精品jizz观看 | 手机看片国产欧美日韩高清 | 亚洲最新视频在线观看 | 欧美爱爱爽爽视频在线观看 | 成人国产精品毛片 | 国产成人精品一区二三区2022 | 亚洲另类视频在线观看 | 性视频一区二区三区免费 | 日韩在线小视频 | 亚洲欧美久久婷婷爱综合一区天堂 | 99精品欧美一区二区三区 | 国产二区精品 | 国产伦精品一区二区三区在线观看 |