PHP 學習(一)

來源:互聯網
上載者:User

標籤:

以下內容均來自http://www.w3school.com.cn/php/

感謝w3chool提供的學習平台。贊。

 

PHP學習:
1.PHP的片段
<?php>
....
<?>

2.三種注釋方式:
    2.1  //...
    2.2  #...
    2.3  /*....
            ...*/

3.函數,類,關鍵字的大小寫不敏感
    echo ===  EcHo

4.所有變數對大小寫敏感
    $value != $valUE

5.PHP 變數規則:
    5.1 變數以 $ 符號開頭,其後是變數的名稱
    5.2 變數名稱必須以字母或底線開頭
    5.3 變數名稱不能以數字開頭
    5.4 變數名稱只能包含字母數字字元和底線(A-z、0-9 以及 _)
    5.5 變數名稱對大小寫敏感($y 與 $Y 是兩個不同的變數)

6.PHP 有三種不同的變數範圍:
    6.1 local(局部)
    6.2 global(全域)
    6.3 static(靜態)

7.Local 和 Global 範圍
    7.1 函數之外聲明的變數擁有 Global 範圍,只能在函數以外進行訪問。
    7.2 函數內部聲明的變數擁有 LOCAL 範圍,只能在函數內部進行訪問。

8.PHP global 關鍵詞
    8.1 global 關鍵詞用於訪問函數內的全域變數。(要做到這一點,請在(函數內部)變數前面使用 global 關鍵字)

9.PHP static 關鍵詞
通常,當函數完成/執行後,會刪除所有變數。不過,有時我需要不刪除某個局部變數。實現這一點需要更進一步的工作。
要完成這一點,請在您首次聲明變數時使用 static 關鍵詞.

10.PHP echo 和 print 語句
echo 和 print 之間的差異:
    echo - 能夠輸出一個以上的字串  (echo "This", " string", " was", " made", " with multiple parameters.";)
    print - 只能輸出一個字串,並始終返回 1  (print "I‘m about to learn PHP!";)
提示:echo 比 print 稍快,因為它不返回任何值。

11.PHP 邏輯是 true 或 false。
$x=true;
$y=false;

12.PHP 數組
數組在一個變數中儲存多個值。
$cars=array("Volvo","BMW","SAAB");

13.PHP 對象
在 PHP 中,必須明確地聲明對象。
首先我們必須聲明對象的類。對此,我們使用 class 關鍵詞。類是包含屬性和方法的結構。
然後我們在對象類中定義資料類型,然後在該類的執行個體中使用此資料類型:
執行個體
<?php
class Car
{
  var $color;
  function Car($color="green") {
    $this->color = $color;
  }
  function what_color() {
    return $this->color;
  }
}
?>

14.PHP NULL 值
特殊的 NULL 值表示變數無值。NULL 是資料類型 NULL 唯一可能的值。
NULL 值標示變數是否為空白。也用於區分Null 字元串與空值資料庫。
可以通過把值設定為 NULL,將變數清空

15.字串操作函數
    15.1 PHP strlen() 函數, strlen() 函數返回字串的長度,以字元計。
    <?php
        echo strlen("Hello world!");
    ?>

    15.2PHP strpos() 函數
    strpos() 函數用於檢索字串內指定的字元或文本。
    如果找到匹配,則會返回首個匹配的字元位置。如果未找到匹配,則將返回 FALSE。
    <?php
        echo strpos("Hello world!","world");   //output:6
    ?>

16.PHP 常量
    16.1 常量是單個值的標識符(名稱)。在指令碼中無法改變該值。
    有效常量名以字元或底線開頭(常量名稱前面沒有 $ 符號)。
    與變數不同,常量貫穿整個指令碼是自動全域的。
    16.2設定 PHP 常量
    如需設定常量,請使用 define() 函數 - 它使用三個參數:
        1)首個參數定義常量的名稱
        2)第二個參數定義常量的值
        3)可選的第三個參數規定常量名是否對大小寫敏感。預設是 false(敏感)  true(不敏感)。
    <?php
        define("GREETING", "Welcome to W3School.com.cn!");
        echo GREETING;
    ?>

17.PHP運算子
    17.1 加減乘除,模與其他語言沒有差別。
    17.2 字串運算子:
        1) .     串接     
        $txt1 = "Hello"
        $txt2 = $txt1 . " world!"     //現在 $txt2 包含 "Hello world!"

        2) .=     串接賦值
        $txt1 = "Hello"
        $txt1 .= " world!"     //現在 $txt1 包含 "Hello world!"
    17.3 比較子
        比較子與其它語言基本一致。特殊的幾個:
        ===     全等(完全相同)     $x === $y     如果 $x 等於 $y,且它們類型相同,則返回 true。
        !==     不全等(完全不同)     $x !== $y     如果 $x 不等於 $y,且它們類型不相同,則返回 true。
        代碼:
        $x=100;
        $y="100";

        var_dump($x == $y); // 因為值相等,返回 true
        echo "<br>";
        var_dump($x === $y); // 因為類型不相等,返回 false
        echo "<br>";
        var_dump($x != $y); // 因為值相等,返回 false
        echo "<br>";
        var_dump($x !== $y); // 因為值不相等,返回 true
        echo "<br>";

    17.4 邏輯運算子
        與其它語言保持一致。注意幾點:
        and <===> &&
        or <===> ||

    17.5 數組運算子  (用於數組的比較)
        +     聯合     $x + $y     $x 和 $y 的聯合(但不覆蓋重複的鍵)
        ==     相等     $x == $y     如果 $x 和 $y 擁有相同的鍵/值對,則返回 true。
        ===     全等     $x === $y     如果 $x 和 $y 擁有相同的鍵/值對,且順序相同類型相同,則返回 true。
        !=     不相等     $x != $y     如果 $x 不等於 $y,則返回 true。
        <>     不相等     $x <> $y     如果 $x 不等於 $y,則返回 true。
        !==     不全等     $x !== $y     如果 $x 與 $y 完全不同,則返回 true。
    17.6 邏輯控制,迴圈
        邏輯控制的if else elseif 與其它語言保持一致。
        迴圈包括:while  do..while   for   foreach($arr as $value)  與其它語言保持一致.
        需要注意foreach的使用:
        <?php
            $colors = array("red","green","blue","yellow");

            foreach ($colors as $value) {
              echo "$value <br>";
            }
        ?>


18.PHP函數
    函數是可以在程式中重複使用的語句塊。
    頁面載入時函數不會立即執行。
    函數只有在被調用時才會執行。
    函數名對大小寫不敏感。
    <?php
        function writeMsg() {
          echo "Hello world!";
        }

        writeMsg(); // 調用函數
    ?>


    函數傳參數的執行個體:
    <?php
        function familyName($fname,$year) {
          echo "$fname Zhang. Born in $year <br>";
        }

        familyName("Li","1975");
        familyName("Hong","1978");
        familyName("Tao","1983");
    ?>

    函數參數預設值:
    <?php
        function setHeight($minheight=50) {
          echo "The height is : $minheight <br>";
        }

        setHeight(350);
        setHeight(); // 將使用預設值 50
        setHeight(135);
        setHeight(80);
    ?>

19.PHP數組
    19.1 基本認識
        array() 函數用於建立數組。
        在 PHP 中,有三種數群組類型:
        1)索引數組 - 帶有數字索引的數組
        2)關聯陣列 - 帶有指定鍵的數組
        3)多維陣列 - 包含一個或多個數組的數

        索引是自動分配的(索引從 0 開始):
        $cars=array("Volvo","BMW","SAAB");
        執行個體:
        <?php
        $cars=array("Volvo","BMW","SAAB");
        echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
        ?>
    19.2 數組的操作
        count(數組名) 函數用於返回數組的長度(元素數)
        數組排序:
        sort() - 以升序對數組排序
        rsort() - 以降序對數組排序
        asort() - 根據值,以升序對關聯陣列進行排序
        ksort() - 根據鍵,以升序對關聯陣列進行排序
        arsort() - 根據值,以降序對關聯陣列進行排序
        krsort() - 根據鍵,以降序對關聯陣列進行排序



    19.3 關聯陣列
        關聯陣列是使用您分配給數組的指定鍵的數組。
        $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
        或者:
        $age[‘Peter‘]="35";
        $age[‘Ben‘]="37";
        $age[‘Joe‘]="43";
        <?php
        $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");
        echo "Peter is " . $age[‘Peter‘] . " years old.";
        ?>
        遍曆輸出關聯陣列中的所有值:
        <?php
        $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");

        foreach($age as $x=>$x_value) {
          echo "Key=" . $x . ", Value=" . $x_value;
          echo "<br>";
        }
        ?>


20.超全域變數
PHP 中的許多預定義變數都是“超全域的”,
這意味著它們在一個指令碼的全部範圍中都可用。在函數或方法中無需執行 global $variable; 就可以訪問它們。
這些超全域變數是:
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION

執行個體1:關於$GLOBALS
<?php
$x = 75;
$y = 25;
 
function addition() {
  $GLOBALS[‘z‘] = $GLOBALS[‘x‘] + $GLOBALS[‘y‘];
}
 
addition();
echo $z;   //100
?>
其餘超全域變數後面再學習。

PHP 學習(一)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.