【風馬一族_php】NO2_php基礎知識

 原文來自:http://www.cnblogs.com/sows/p/5995763.html (博客園的)風馬一族 侵犯版本,後果自負javascript


 

回顧

  什麼是php以及php的發展史php

  1. 搭建web服務器
    1. apache:接收瀏覽器發出的請求以及返回結果(html)
    2. php: 處理php代碼,操做數據庫(mysql)
    3. mysql: 存儲和處理數據
  2. apache配置php
    1. 加載:LoadModule php5_module  php5apache...dll
    2. 分配: addType application/x-httpd-php  .php
    3. php配置文件:PHPIniDir  php配置文件路徑
  3. php配置mysql
    1. 開啓擴展:extension  php_mysql.dll
    2. 增長擴展路徑: extension_dir php_mysql.dll 所在的路徑
  4. apache工做原理
    1. 靜態頁:apache拿到文件後直接讀出內容交給瀏覽器
    2. php文件:apache拿到文件後交給php引擎處理,php把處理後生成的html文件交還給apache(php有可能操做數據庫:利用mysql擴展),apache將獲得的html內容返回瀏覽器
  5. web的工做原理(相似於4)
  6. 基於域名的虛擬主機配置:httpd.conf 加載httpd_vhost.conf,httpd_vhost.conf配置虛擬主機
    1.   注意
      1. 註釋或者刪除本來httpd_vhost.conf裏的虛擬主機
      2. 必須配置一個或者以上的虛擬主機
      3. 須要增長一個localhost的虛擬主機

---------------------------------------------------------------------------------------html

PHP的工做

  php是一種腳本語言,嵌入到html代碼中。java

  若是文件自己不以.php結尾的話,那麼該文件apache不會交給php處理,因此會將php代碼原封不動的交給瀏覽器,而瀏覽器又不能解析php代碼,因此就不會輸出最終php代碼所須要執行的結果mysql

  1:在html文件中嵌入php代碼web

  

    2. 在php文件中,html嵌入php代碼sql

    

    注意:凡是以.php結尾的文件,apache都會交給php引擎處理。php引擎是選擇性處理,只處理php代碼,不會處理其餘非php代碼數據庫

---------------------------------------------------------------------------------------------------------------apache

php獨立文件

  沒有其餘代碼(html),純粹都是php代碼。(不須要藉助apache工做,只須要php引擎)須要使用php.exe文件去運行php文件數組

  

---------------------------------------------------------------------------------------------------------------

php基礎知識

  php標籤

     1. 經常使用標籤

     <?php

        //php代碼

           ?>

            是最多見一種標籤方式

          2. php腳本標籤

          <script language="php">

         //php代碼

       </script>

      

     注意:腳本標籤的方式不多用,由於容易與javascript的標籤混淆

    3. 短標籤

      PHP默認不支持短標籤,須要在配置文件中設置     D:\service\php\php.ini

        

     <?

        //php代碼

     ?>

     效果

     

      注意:默認的,php已經不支持短標籤語法,須要在配置文件中開啓

 

  PHP註釋

   php註釋有兩大類:單選註釋和塊註釋(多行)

  1. 單行註釋有兩種
    1. 雙斜槓: //
      1. //輸出  hello
      2. echo "hello";
    2. #號:  #
      1. # 輸入 hello 
      2. echo "hello";  
  2. 塊註釋    /* 註釋內容  */
    1. /*
       *  函數功能  
       *  @param 參數解釋
       *  @return 返回值解釋
       *
       *   @author 做者 
       *   @2016-10-25
      */
    2. 效果
    3. 注意:PHP在解析PHP代碼的時候,會跳過註釋,不會保留註釋信息

  PHP變量  

  1. 語法:$變量名

    1. 例子

      1. $name            

      2. $number
      3. $sex
      4. $age
    2. 變量命名規則
      1.  必須以$符號開始
      2. 變量名能夠由字母,下劃線和數字自由組合
      3. 不能以數字開頭
      4. 能夠是中文
      5. 變量命名一般須要見名之意
      6. 變量名字有多個單詞組成的時候,可使用兩種方式
        1. 駝峯法:schoolNameSex
        2. 下劃線:school_name_sex
      7. php中變量通常是在定義的時候就賦值
    3. 語法錯誤  
  2. 弱類型語言
    1. 指的是變量能夠爲任意類型,而不須要指定具體類型。

 1、使用變量

      直接使用變量便可:前提條件是當前變量已經被賦值(定義)

      輸出:echo $變量名;

      判斷:if( $變量名 == ‘值’)

      

  2、修改變量

    將原有變量進行從新賦值

    //定義變量

    $age = 20

    //修改變量

    $age =34

    

    echo $age   //34

 

  3、刪除變量

    將變量所指向的值給釋放掉(將變量自己釋放)

    unset(變量名)

 

    //輸出已經釋放的變量

    $age = 10;

    unset($age)

    echo $age  //錯誤未定義

    

  php常量

    一旦被定義,就不能被修改,只能被使用的‘量’叫作常量。

    

  一:語法

      define('常量名',常量值);

  二:常理使用的語法

  1. 直接使用常量名
  2. 不能加 $   否則會出錯誤

  三:常量的使用

    1. 某個值不須要變化的時候。例如數字常量PI
    2. 用於整個網站
    3. 凡是能使用常量去作的事情均可以使用變量去替代。常量是用來規範保證數據不被修改。

      

  四:常量命名規則

  1. 常量不能使用$符號
  2. 其餘命名規則與變量基本一致
  3. 常量命名一般使用所有大寫字母,多單詞的常量都是使用下劃線方式。
  4. 常量與變量同樣都區分大小寫    

   五:變量與常量的內存原理圖

  

  六:php腳本執行結束後內存是如何處理的?

  1. 什麼叫作PHP腳本執行結束?
    指的是當PHP引擎將用戶請求的某個php腳本文件(index.php)的最後一行PHP代碼執行完畢,稱之爲腳本執行結束
  2. 腳本結束後內存如何處理?
    PHP腳本所佔用的全部內存都會被釋放、被操做系統回收

  七:注意

  1. 結束標籤
    1.   結束符號能夠不存在,條件是文件中的PHP代碼後面沒有其它語言的代碼
    2.   結束符號若存在,則結束符號後面存在空格的話,空格會看成Html代碼發出,後果是空格至關無用的代碼,浪費帶寬
    3.   php代碼嵌入html中,最好使用結束符號,減小錯誤出現
  2. 結束語句的結束符號: 英文符號 ;
    1.   若存在結束標籤,最後一句中,能夠不使用結束符號      
    2.       若不存在結束符號,則每句都要使用結束符號
  3. 常量的定義比變量更加鬆散
  4. 變量與常量的命名建議
    1.   不使用中文使用變量名
    2.   全部的變量或者常量,都建議使用字母配合下劃線的方式去實現,變量中還能夠配合數字

 ----------------------------------------- 

數據類型

  數據類型是針對各類(變量)值而言,而不是針對變量自己

  1. PHP有三大數據類型:標量、複合、特殊  、
  2. 標量數據類型(簡單數據類型)
    1. 整型
      1. int   integer  、
      2. 整型在系統內存中佔4個字節保存數據
    2. 浮點型
      1. float   double(PHP沒有這個) 
      2. float佔用8個字節(這是PHP規定的大小) 
      3. 浮點數會丟失精度,於是一般不使用浮點數來比較大小
      4. 通常對於精確要求不是那麼高的,可是數據又特別大時,可使用浮點數,其它狀況通常使用整型
    3. 時間戳
      1. 從1970年到當前時間的秒數稱之爲時間戳
      2. php提供了一個函數:time()
        1. 獲取時間戳
        2. 效果
        3. 使用Date() ,能夠格式化時間
    4. 字符串  string
      1. 凡是帶引號包好的字符均可以稱之爲字符串
      2. 字符串的表示方式
        1. 單引號
          1. 將字符串用單引號包裹起來  
        2. 雙引號
          1. 將字符串用雙引號包裹起來
          2. 與單引號的不一樣之處有:
            1. 雙引號中可以使用更多的轉義字符
            2. 可以解析PHP變量
          3. 在兩個字符串鏈接,不出現空格的方法
            1. 使用點
            2. 使用中括號
            3. 效果
        3. 定界符
                使用一種特殊的符號 <<<  ,增長一對起始和結束標識來包括字符串
          1. 語法
            $str=<<<EOD
              //字符串
            EOD;    //這句話只能單獨佔用一行,且在行頭處,不能有空格 (否則會出錯)
          2. 效果
          3. 定界符使用規則
            1. 定界符的邊界符號必須成對
            2. 右定界符必須頂格
            3. 兩個定界符後面都不能跟任何其餘內容  
          4. 定界符的意義
            1. 爲了讓雙引號對應的字符串在編寫的時候查看
            2. 定界符可以在輸出以後保證原來的數據格式 
            3. heredoc結構就是以上所講的定界符,對應雙引號功能
               $str=<<<eof 

               eof;
            4. nowdor結構也是以上結構,只是對應單引號功能
               $str=<<<'eof' 

               eof;
          5. 佛日:單引號比雙引號的字符串效率要高,由於單引號不須要去解析其中的變量等內容,只要直接輸出便可。  
    5. 布爾
      1. bool  Boolean     , 只有兩個值true和false
      2. 效果   val_dump(值或變量)   用來測試變量或值的類型
      3. 哪些數據會被當作False處理?
        1. 須要經過比較的形式來判斷是否爲False
          1. 0:整型0

            0.0:浮點0

            ‘0’:字符串0

            null:空

            ‘’:空字符串

  3. 複合數據類型
    1. 數據
    2. 數組
  4. 特殊數據類型
    1. NULL: 定義的變量的值爲NULL或者變量被刪除
      1. 效果
    2. 資源: 全部外部數據的操做所有稱之爲資源類型數據
      1. 例如: PHP操做數據庫中,mysql_connect鏈接成功返回的一個結果稱之爲資源(鏈接資源) 

 進制轉換

  二進制、八進制、十進制、十六進制等間的轉化

系統預約義變量

  系統定義的變量稱之爲預約義變量,預約義變量有9個

  1. $_POST: 接收用戶表單post方式提交的全部數據
  2. $_GET: 接收用戶表單get方式提交的全部數據
  3. $_REQUEST: 接收用戶get方式,post方式提交的數據,還有cookie數據
  4. $_FILES:接收用戶上傳的文件信息
  5. $_SEEEION: 存放session數據(存放在服務器)
  6. $_COOKIE: 存放cookie數據(存放在瀏覽器)
  7. $_GLOBALS: 全局變量
  8. $_SERVER: 保存服務器信息 (掌握幾個經常使用的數據)
  9. $_ENV: 保存系統環境信息

系統預約義常量

  1. PHP_OS: 操做系統內核
  2. PHP_VERSION: 當前PHP的版本
  3. PHP_INT_SIZE: int類型所佔的字節數
  4. PHP_INT_MAX: int類型能表示的最大值
  5. 魔術常量: 能夠自動變化的常量
    1. _FILE_: 當前腳本的文件路徑(絕對路徑)
    2. _LINE_: 當前所在的行數
    3. _DIR_: 當前腳本所在的目錄 (PHP4纔有)
    4. _FUNCTION_: 當前函數的名字
    5. _METHOD_: 當前方法的名字(類中的函數)

可變變量

  經過一個獲得一個變量的值,將該值再次當作一個變量名從而獲得另一個變量的值

  即變量的值,看成另個值的變量

  

傳值

  變量間的賦值

  1. 變量間的傳值分爲兩種:值傳遞和引用傳遞
      1. 值傳遞 
        1. 將一個變量的值賦值一份,而後賦值給新的變量
        2. 一個變量的變動不會影響另一個變量的變動

    1. 引用傳遞
      1.  將一個變量的地址賦值給新的變量
      2. 在給變量賦值的時候,使用地址符號&得到一個變量的地址
  2. unset 原理
    1. 圖解
  3. 交換變量值 (兩個變量都是整數)
    1. 使用第三個變量來讓兩個變量的值的交換
    2. 不使用第三個變量交換兩個變量的值  
相關文章
相關標籤/搜索