php文法基礎

來源:互聯網
上載者:User

標籤:style   http   java   color   使用   os   strong   檔案   

php變數

php變數用於儲存字元,數字,數組甚至對象資源等,以便在我們需要的地方使用.

 $變數名=值;

 變數名以字母(a-z,A-Z)或者底線_開始,後面可以跟

任意字母或數字以及底線,但不能是空格. 

 例子:

     <?php

     $var_char="你好";

     echo $var_char;

     ?>

 結果為:你好!

延伸:與c語言等強型別的程式設計語言不通,php

是一門鬆散類型的語言,即不需要在設定變數之前

聲明該變數.根據變數被設定的方式,php會自動

地將變數轉換成正確的資料類型,且變數會在

使用時被自動聲明,這一屬性給web編程帶來了

極大的靈活性. 

 php常量

 define()函數用於定義常量。

例子:

   <?php

     define("CONSTANT","你好!");

     echo CONSTANT;

   ?>

 php注釋符號與注釋格式

 php注釋符號:

  (1)c++風格://這是c+風格的注釋.

   (2)c風格:/*這是c風格的注釋*/

     (3) Unix Shell風格:#這是Unix Shell風格的注釋

 注意:不要嵌套使用 C 風格注釋符,因為在碰到第一個 */ 時系統即認為該段注釋結束,在注釋掉一大塊代碼時很容易出現該錯誤。也可以多次使用 // 符號來注釋多行代碼,但一般只限於有限的幾行

 isset() 用於檢測一個或者多個變數是否設定。

  如果被檢測得變數存在則返回true,否則飯後false,如果檢測多個變數時,

只要其中一個變數存在,則檢測結果就會返回true。 

  例子:

<?php

   $var=1;

   if(isset($var))

  {

    echo ‘變數$var 已經被設定‘;

  }

 else{

 echo ‘變數$var還未被設定‘;

 }

?>

注意: 

 (1)isset()只能用於檢測變數,傳遞任何其它參數豆漿造成解析錯誤.

 (2)isset()是一個語言結構而非函數,因此它無法被變數函數調用.

$var=null;變數被設定成null.

unset($var); 被unset()釋放了的變數.

var $var;類裡變數被var關鍵字聲明,但尚未設定.

下述情況,isset()返回true:

 $var=" ";

 $var=array();

$var=0;

$var=false;

 empty()用於檢測一個變數是否為空白。

注意:

(1)empty()只能用於檢測變數,empty(addslashes($var)),

這種用法是非法的.

(2)empty()是一個語言結構而非函數,因此它無法被變數函數調用.

 unset()用於銷毀一個或多個變數.

 注意:嚴格講,使用 unset() 銷毀靜態變數,只是斷開了變數名和變數值之間的引用.

unset() 全域變數同 unset() 靜態變數一樣,如果在函數中 unset() 一個全域變數,則只是局部變數被銷毀,而在調用環境中的變數將保持調用 unset() 之前一樣的值。

 提示

  • 在很多情況下,可以讓 PHP 自動管理變數而無需考慮 unset() 變數。只有在特定的,需要某個變數必須為空白的時候才使用到。如:使用者退出登入時,為了確保資訊的安全性,可以用 unset() 清空 session 的內容。
  • unset() 盡量不要用在靜態變數上,因為這與定義靜態變數的初衷相悖。
  • unset() 是一個語言結構而非函數,因此它無法被變數函數調用。

 php資料類型

 四種標量類型:string(字串),integer(整型),float(浮點型,也作double),boolean(布爾型).

 兩種複合類型:

 1.array(數組) 2.object(對象).

 兩種特殊類型:

 1.resource(資源) 2.NULL(空) 

提示:1.由於曆史原因,如果是 float 類型資料,gettype() 函數返回的是 double,而不是 float ;2.如果想查看某個運算式的值和類型,請使用用 var_dump() 函數。

  整型(略),字串類型(略),浮點型:浮點數的字長跟平台相關,儘管通常最大值是

1.8e308並具有14位十進位數位精度(64位IEEE格式).

 數組:用array()語言結構來建立一個數組;

 $arr=array("foo"=>"bar", 12=>TRUE);

 echo $arr<"foo">;  //輸出bar

 echo $arr<12>; //輸出1

例子中,"foo"與12稱為鍵名(key),"bar"與true為對應的值。

在這個數組中,包含了2個類型.

   1.$arr["foo"]:值為"bar",字串類型.

   2.$arr[12]:值為true,布爾型.

object:對象(object)用new關鍵字執行個體化一個對象.

 resource:資源是一種特殊的變數類型,儲存了到外部資源的一個引用,

如開啟檔案,資料庫連接,圖形畫布地區等。資源是通過專門的函數建立和使用的.

 注意:由於 PHP4 Zend 引擎引進了資源計數系統,可以自動檢測到一個資源不再被引用了(和 Java 一樣)。這種情況下此資源使用的所有外部資源都會被記憶體回收系統釋放。因此,很少需要用某些 free-result 函數來手工釋放記憶體。  注意: 持久資料庫連接比較特殊,它們不會被記憶體回收系統破壞。 
NULL:表示一個變數沒有值,null類型唯一可能的值就是null.

當一個變數被賦值為null,或尚未被賦值,被unset()可認為是null。 

提示:null不可寫作null. 

 php函數PHP 內建函數常用的有“字串函數”、“數組函數”、“資料庫函數”、“時間/日期函數”、“檔案函數”、“映像函數”、“正則函數”、“URL函數”等。

function_exists() 函數用於檢測函數是否被定義。

 例子2,檢測系統內建函數,以下代碼是常見的用於檢查系統是否開啟 GD 庫:

<?php if(function_exists(‘gd_info‘))
{     echo ‘GD庫已經開啟。‘; } 
else {    echo ‘GD庫沒有開啟。‘; } ?>

特殊情況

function_exists() 函數有個特殊情況,當參數不是以字串函數名而是以 function_name() 形式傳入參數時,function_exists() 將直接返回原函數值。

<?php function testfunc(){     echo ‘我是自訂函數‘; } echo function_exists(testfunc()); ?> 

運行該例子輸出:

我是自訂函數

   

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.