PHP學習筆記(一)

LAMP概述:Linux+Apache+MySql+Php。

PHP數據類型:

        變量($i):四種標量類型,布爾型,整型,浮點型,整型。

                   兩種符合類型:數組,對象。‘

                   兩種特殊數據類型:資源,null。

        常量:define("name",value)  變量名稱name前面沒有$符號

PHP外部變量與環境變量:

        外部變量:

             $_Get

             $_Post

             $_Request

             $_Files

             $_Cookie

             $_Sission

       環境變量:

            $_Server

            $_ENV

PHP運算符:

PHP流程控制之分支結構:

           if...else...

          switch...case...default...

          try...catch...

PHP流程控制之循環結構:

          while(){

          }

          do{

          }while(true)

          for(,,){

          }

PHP中函數的聲明(有返回值成爲函數,無返回值成爲一個過程):

         函數是一段完成指定任務的已命名代碼

         function 函數名(參數1,參數2...){

            函數體

           return 返回值

        }

       函數中可能使用的關鍵字 static global $Global["變量名"]  

       function_exists(函數名):判斷函數是否存在

PHP中字符串聲明的方法:

       雙引號:可以在雙引號裏執行變量,可以使用轉義字符

       單引號:不能在雙引號裏執行賓利,可以使用部分轉義字符

       反引號:在反引號裏面執行服務器命令

       定界符:$str=<<<here.....

                     .................here;和雙引號一樣,但可以在裏面使用任何多的是雙引號。

PHP中的字符串函數:

      echo():也可寫成 echo"Hello World"

      print():具有返回值的

      die():輸出後退出程序

      printf():格式化輸出,類似於C語言裏面的寫法

      sprintf():格式化保存

      print_r():輸出數組

      var_dump:輸出字符串類型

      ltrim(),rtrim(),trim(),

      strrev():字符串反轉

      explode():字符串分割

      implode():字符串聯合

      對URL字符串的解析:parse_str(),parse_Url(),

      對Url編碼處理的函數:rawurlencode(),urlencode(),urldecode()

      構造查詢字符串:http_build_query()

PHP中的數組:

     數組是一個可以存儲一組或一系列數值的變量

     1.可以存儲任何類型的數據

     2.長度可變

     PHP數組分爲兩類:

     1.索引數組:數組的索引是整數,從0開始

     2.關聯數組:數組以字符串作爲索引值

     $arr[0]=100;$arr[]=200(可以不加下標

     count($arr):正在佔有的空間就是正在的值。

     $arr=array(1,2,"a","b")

     $arr=array("age"=>19,2,"name"=>"張三",true)

     echo $arr["name"]  //張三

     注:關聯數組的下標不會影響到索引數組的下標

     二維數組:

     $arr=array(array(1,2,3),array("a","b","c"))

     數組的變量(foreach,while(),list():將數組轉換爲變量來使用,each()):

     $arr=array(1,2,3,"abc"=>"one","two",100,"three");

     foreach($arr as $value){

         echo $value

     }

     while($a=each($arr)){

         echo $a["key"];//$a[0]

         echo $a["value"]  //$a[1] 

    }

    $one=array(1,2,3)

    list($a,$b,$c)=$one  //$a=1,$b=2...

    數組相關處理函數:

     curren():  next(): end(); rest(); count(); sizeof(); array_change_key_case();array_chunk(); extract();compact();sort();sort();

 PHP面向對象:

    內存分爲四塊:

    1.初始化靜態字段。

    2.棧內存(空間小,訪問速度快)

    3.堆內存(空間大,範文速度慢,堆裏面的數據不能直接訪問)

    4.代碼段

    特殊的引用關鍵字$this

    構造方法(在創建一個對象後自動調用)  1.function 類名(){}  2. function __construct(){}// PHP5裏面的寫法(若兩個都有,則使用function_construct{}這個)

    析構方法(在對象消失前自動調用)  function __destruct(){}

    封裝性(private):__set($proName)  __get($proName,$value):在直接調用私有屬性時調用

                                __isset():判斷對象裏的成員是否存在(不是私有的情況)

                               __onset():刪除變量,在內存中刪除

    繼承(extends.不支持多繼承):

    方法的重載:php中不支持方法的重載,只能覆蓋父類中相同的方法

    訪問權限:private procted(本類或子類中使用) public

    面向對象中常用的關鍵字:

                              final:只能定義類和方法,定義類,該類不能夠被繼承。定義方法,該方法不能被覆蓋

                              static:屬於類而不屬於對象實例 ,通過類名來訪問。類名::$成員屬性   (類名也可以使用.self)

                              const:是一個在類裏面把定義成員屬性爲常量的關鍵字  。類名::成員屬性(沒有$符號)

    面向對象中常用的魔術方法:

                              __tostring():用於打印對象的形象,輸出對象時自動調用 

                              __clone():在調用clone()方法時自動調用

                              __call($funName,$argus):當調用不存在的函數時自動調用

                              __auto($className) :如果在頁面中用到類了,就會自動調用

    對象的串行化(Serialize()):將對象轉換成二進制字符串  

    對象的反串行化(Unserialize):將二進制字符串轉換成對象

    部分序列化(__sleep),部分反序列化(__wakeup)                  

    抽象方法和抽象類(abstract)

    接口(interface)

    繼承接口(implements)

發佈了87 篇原創文章 · 獲贊 6 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章