PHP語言入門


2.1 PHP語言基礎

         2.1.1 PHP文件格式

                   Helloworld.php

<Html>

              <head>

                   <title>Hello World!</title>

              </head>

              <body>

                  <?php

                       //輸出Hello,World

                       echo "Hello,World";

                  ?>

              </body>

</html>

         2.1.2 PHP標記

                   <?php……?>

                   <?……?>

                   <script language=”php”>……<script>

                   <%……%>

                   <?php echo("第一種書寫方法!/n"); ?>

        

<script language="php">

              echo ("script書寫方法!");

</script>

 

<%

              echo("這是ASP的標記輸出");

%>

 

<?

              echo("這是PHP的的簡寫標記輸出");

?>

<?php

$expression=1;

if ($expression) {

            ?>

          <strong>這是真的!</strong>

    <?php

} else {

           ?>

          <strong>這是假的!</strong>

           <?php

}

?>

         2.1.3 PHP 文件愛女的訪問形式

                   PHP為服務端執行的語言,必須通過服務器解釋才能執行

<Html>

           <head>

              <title> Hello World!</title>

          </head>

          <body>

                 <b>hello world!</b>

          </body>

</html>

         2.1.4 PHP程序注釋

                  

<?php

          echo "C++語言注釋的方法即 // <br>"; // 采用C++的注釋方法

          /* 多行注釋

            對於大段的注釋很有用的哦*/

          echo "多行注釋方法即 /*...*/ <br>";

  echo "Unix的注釋方法即 # <br>"; # 使用UNIX Shell語法注釋

?>

                  

<?php

/*

echo "不能嵌套使用多行注釋符號/n"; /* 嵌套使用會出錯*/

*/

?>

         2.1.5 PHP語法概述

                   類似於C/C++

2.2 PHP的變量

         2.2.1 PHP的變量命名

                   PHP變量名是區分大小寫的,和C語言是一致的;

                   變量名必須是以美元符號($)開始;

                   變量名開頭可以以下划線開始;

                   變量名不能以數字字符開始。

         2.2.2 PHP的數據類型

<?php

              $True="我是變量" . True;

              echo($True);

              echo("<BR>");

              echo("我是關鍵字" . True)

?> 

 

<?php

              $int_D=2147483647;  //十進制賦值

              echo($int_D);

              echo("<br>");

              $int_H=0x7FFFFFFF;  //十六進制賦值

              echo($int_H);

              echo("<br>");

              $int_O=017777777777;  //八進制賦值

              echo($int_O);

              echo("<BR>");

?> 

 

<?php

              $float_1=90000000000; 

              echo($float_1);

              echo("<br>");

              $float_2=9E10; 

              echo($float_2);

              echo("<br>");

              $float_3=9E+10;

              echo($float_3);

?> 

 

<?

              $single_str='我被單引號括起來了!<br>';

              echo $single_str;

              $single_str='輸出單引號:/'嘿嘿,我在單引號里面/'<br>';

              echo $single_str;

              $single_str='輸出雙引號:"我在雙引號里面"<br>'; 

              print $single_str;

              $single_str='輸雙美元符號:$';

              print $single_str;

?>

 

<?

              $Double_str="我被雙引號括起來了!<br>";

              echo $single_str;

              $single_str="輸出單引號:'嘿嘿,我在單引號里面'<br>"; //不需要轉義符

              echo $single_str;

              $single_str="輸出雙引號:/"我在雙引號里面/"<br>";  //需要轉義符

              print $single_str;

              $single_str="輸出美元符號:/$ <br>";  //需要轉義符   

              print $single_str;

              $single_str="輸出反斜杠:// <br>";  //需要轉義符

              print $single_str;

    

?>

 

<?

$heredoc_str =<<<heredoc_mark

              你好<br>

              美元符號 $ <br>

              反斜杠  /<br>

              "我愛你"<br>

              '我恨你'

heredoc_mark;

              echo $heredoc_str;

?>

 

本實例演示字符串中對變量的引用:<br>

<?php

              $str_1 = "我是變量的值!"; 

              $str_2 = "str_1 : $str_1<br>";  //雙引號字符串中包含變量$str_1

              echo $str_2;

 

              $str_1 = '我是變量的值';

              $str_2 = 'str_1 : $str_1<br>';  //單引號中包含字符串的值

              echo $str_2;

 

              $str_1 = "我是變量的值!"; 

              $str_2 = "str_1 : $str_12 <br>";  //引用的變量名后,多了個字符即$str_12

              echo $str_2;

 

              $str_1 = "我是變量的值!"; 

              $str_2 = "str_1 : ${str_1}2 <br>";  //引用的變量名后,多了個字符即$str_12

              echo $str_2;

?>

 

<?php

$a="";  //空字符串

$b = 3.1;  //浮點型

$c= TRUE;  //布爾型

$d =  2147483647;  //整型

$e =  2147483648;  //超過整型的范圍,自動編程浮點型

$f= 0x80000000 ;   //十六進制

$g="hi";  //字符串

$h=array(1,2);  //數組

 

//分別輸出類型

echo '$a類型是:'; 

var_dump($a);

echo '<br>$b類型是:';

var_dump($b);

echo '<br>$c類型是:';

var_dump($c);

echo '<br>$d類型是:';

var_dump($d);

echo '<br>$e類型是:';

var_dump($e);

echo '<br>$f類型是:';

var_dump($f);

echo '<br>$g類型是:';

var_dump($g);

echo '<br>$h類型是:';

var_dump($h);

?>

 

<?php

$a=0.1;

$b='hi';

$c=True;

if (is_numeric($a))

              echo '$a是數值型<br>';

else

              echo '$a不是數值型<br>';

if (is_int($a))

              echo '$a是整型<br>';

else

              echo '$a不是整型<br>';

if (is_string($b))

              echo '$b是字符串型<br>';

else

              echo '$b不是字符串型<br>';

if (is_bool($c))

              echo '$c是布爾型<br>';

else

              echo '$c不是布爾型<br>';

?>

 

<?php

$a=0.1;    //定義變量

$b=0;    //0值

$c="";  //空字符串

if (isset($a))

              echo '$a已經被定義<br>';

else

              echo '$a沒有被定義<br>';

 

if (!empty($a))

              echo '$a不為空<br>';

else

              echo '$a為空<br>';

 

if (isset($b))

              echo '$b已經被定義<br>';

else

              echo '$b沒有被定義<br>';

 

if (!empty($b))

              echo '$b不為空<br>';

else

              echo '$b為空<br>';

 

 

if (isset($c))

              echo '$c已經被定義<br>';

else

              echo '$c沒有被定義<br>';

 

if (!empty($c))

              echo '$a不為空<br>';

else

              echo '$a為空<br>';

 

if (isset($d))

              echo '$d已經被定義<br>';

else

              echo '$d沒有被定義<br>';

 

if (!empty($d))

              echo '$d不為空<br>';

else

              echo '$d為空<br>';

?>

         2.2.3 數據類型轉換

<?php

              echo gettype((bool) "") . "<br>";       // bool(false)

              echo gettype((bool) 1)  . "<br>";        // bool(true)

              echo gettype((bool) -2) . "<br>";        // bool(true)

              echo gettype((bool) "foo") . "<br>";    // bool(true)

              echo gettype((bool) 2.3e5) . "<br>";    // bool(true)

              echo gettype((bool) array(12)) . "<br>"; // bool(true)

              echo gettype((bool) array()) . "<br>";  // bool(false)

?>

 

<?php

$a=123456;

$b=123.456;

$c=-1.3e8;

 

//通過echo函數輸出時,自動轉換成

echo $a . "abc<br>";

echo $b ."cde<br>";

echo $c . "abc<br>";

 

//字符串轉換成數值

$foo = 1 + "10.5";     

echo $foo . "<br>";

$foo = 1 + "-1.3e3"; 

echo $foo ."<br>";

$foo = 1 + "bob-1.3e3";        

echo $foo ."<br>";

$foo = 1 + "bob3"; 

echo $foo ."<br>";

$foo = 1 + "10 Small Pigs";    

echo $foo ."<br>";

$foo = 4 + "10.2 Little Piggies";

echo $foo ."<br>";

$foo = "10.0 pigs " + 1;       

echo $foo ."<br>";

$foo = "10.0 pigs " + 1.0;     

echo $foo ."<br>";

$foo = 1 + "010";

echo $foo ."<br>";

$foo = 1 + "0x10";

echo $foo ."<br>";

$foo = 1 + "/x10";

echo $foo ."<br>";

$bar = 1 + "/x35"; //0x35 is ASCII for '5'

echo $foo ."<br>";

$foo = 1 + "0x/x41/x31"; //0x41 is ASCII 'A'; 0x31 is '1'

echo $foo ."<br>";

?>

         2.2.4 PHP中的預訂義變量

<?php

echo '提交方法為:'. $REQUEST_METHOD;

echo '<br>網絡協議為:' .$SERVER_PROTOCOL;

?>

 

<?php

echo '主機名稱:'.$HTTP_SERVER_VARS['HTTP_HOST'];

echo '<br>服務器根路徑:'.$HTTP_SERVER_VARS['DOCUMENT_ROOT'];

?>

 

<?php

echo '當前執行腳本文件:'.$_SERVER['PHP_SELF'];

echo '<br>當前執行腳本文件絕對路徑:'.$_SERVER['SCRIPT_FILENAME'];

?>

         2.2.5 變量的引用 

<?php

              $myName="little";

              $YourName=&$myName;  //引用變量

              $myName="littlePig<br>";

             

              print($YourName);

        

              $YourName="littleCat<br>";

              print($myName);

?>

         2.2.6 變量的變量

<?php

              $myStr="myName";  //設定變量

              $$myStr="Marry";  //設定變量的變量即$$myStr

              echo $myStr;  //輸出變量

              echo "<br>";

              echo $$myStr;  //輸出變量的變量

              echo "<br>";

              echo $myName;  //直接輸出$myName和使用$$mystr結果一樣

               echo "<br>";

              $myStr="yourName";

              if (!isset($$myStr))

                  echo '$$myStr變量不存在呢';

?>

         2.2.7 常量

<?php

              define("CONSTANT", "Hello world/n");

              echo CONSTANT . "<BR>"; // 輸出"Hello world."

              echo Constant . "<BR>"; // 輸出"Constant" ,表示沒有該常量

    

              define("GREETING", "Hello you/n", true);

              echo GREETING. "<BR>"; // 輸出"Hello you."

              echo Greeting. "<BR>"; // 輸出"Hello you.",因為設定大小寫不敏感

 

              define("MAXSIZE", "100/n");

              echo MAXSIZE;  //輸出

              echo constant("MAXSIZE"). "<BR>"; // 輸出

 

              echo(defined("ONE")). "<BR>"; 

              define("ONE","Hello,One");

              echo(defined("ONE")). "<BR>";  //如果定義返回True,使用echo輸出顯示

?>

 

<?php

echo "程序當前行:". __LINE__;

echo "<br>操作系統:".PHP_OS;

echo "<br>PHP版本:" .PHP_VERSION

?>

2.3 PHP的運算符

         2.3.1 算術運算符

<?php

              $ONE= 1;

              $TWO= 2;

              $TREE= 3;

              echo $ONE+$TWO . "<br>";  //加

              echo $ONE-$TWO . "<br>";  //減

              echo $ONE*$TWO . "<br>";  //乘

              echo $ONE/$TWO . "<br>";  //除

              echo $TREE%$TWO. "<br>";  //取余數

?>

         2.3.2 賦值運算符

<?php

              $a= 2;

              $a +=3;  //$a=$a+3,值為

              echo $a . "<br>";

              $a -=3;   //$a=$a-3,值為

              echo $a . "<br>";

              $a *=3;   //$a=$a*3,值為

              echo $a . "<br>";

              $a /=3;   //$a=$a/3,值為

              echo $a . "<br>";

?>

         2.3.3 位運算符

<?php

              $a= 7;

              $b= 14;

              $myVal= $a & $b;  //位與

              echo  $myVal. "<br>";

              $myVal=$a | $b;  //位或

              echo  $myVal. "<br>";

              $myVal= $a ^ $b;  //位異或

              echo  $myVal. "<br>";

              $myVal= ~$a;  //為取反

              echo  $myVal. "<br>";

?>

         2.3.4 三元運算符 

         2.3.5 比較運算符

<?php

              echo("10小於嗎:" . ((10<10)?"True":"False") . "<br>");

              echo("10小於等於嗎:" . ((10<=10)?"True":"False") . "<br>");

              echo("10大於嗎:" . ((10>10)?"True":"False") . "<br>");

              echo("10大於等於嗎:" . ((10>=10)?"True":"False") . "<br>");

              echo("10等於嗎:" . ((10==10)?"True":"False") . "<br>");

              echo("10不等於嗎:" . ((10!=10)?"True":"False") . "<br>");

?>

         2.3.6 字符串運算符

<?php

              $a="Hello ";

              $b="World";

              $ab=$a . $b ."<br>";   //字符串連接符號.

              echo $ab

 

              $a="some";

              $a .="thing" . "<BR>";  //賦值運算符.=

              echo $a;

 

              $a="24 five 6" + 6;

              echo $a . "<BR>";

 

              $a="24five 6" + 6;

              echo $a . "<BR>";

 

              $a="five 6" + 6;

              echo $a . "<BR>";

 

              $a="24 five" . 6;

              echo $a . "<BR>";

 

              $a="24five" . 6;

              echo $a . "<BR>";

?>

         2.3.7 遞增和遞減運算符

<?php

              $a=20;

              echo "a++:" . $a++ ."<br>";  //后加

              echo "變量a的新值:" . $a ."<br>";

 

              $a=20;  //重新賦值

              echo "++a:" . ++$a ."<br>";  //先加

              echo "變量a的新值:" . $a ."<br>";

 

 

              $a=20;  //重新賦值

              echo "a--:" . $a-- ."<br>";  //后減

              echo "變量a的新值:" . $a ."<br>";

 

              $a=20;  //重新賦值

              echo "--a:" . --$a ."<br>";  //先減

              echo "變量a的新值:" . $a ."<br>";

?>

         2.3.8 邏輯運算符

         2.3.9 運算符優先級

2.4 表達式

2.5 控制語句

         2.5.1 條件語句

<?php

$achievement=91;

        

if ($achievement<60)

              echo "你不及格";

elseif ($achievement>=60 && $achievement<70)

              echo "你剛剛及格了";

elseif ($achievement>=70 && $achievement<80)

              echo "你得了良好";

elseif ($achievement>=80 && $achievement<90)

              echo "你很優秀哦!";

else

              echo "你兼職太棒了!"

?>

 

<?php

switch (date("D")) {

  case "Mon":

            echo "今天星期一";

            break;

  case "Tue":

          echo "今天星期二";

            break;

  case "Wed":

    echo "今天星期三";

            break;

          case "Thu":

          echo "今天星期四";

          break;

         case "Fri":

           echo "今天星期五";

          break;

          default:

          echo "今天放假";

          break;

}

?>

         2.5.2 循環語句

<?php

/* 應用,每個條件都有*/

for ($i = 1; $i <= 10; $i++) {

           print $i. "-";

/* 應用,省略第個表達式*/

print "<br>";

for ($i = 1; ; $i++) {

           if ($i > 10) {

                break;

           }

           print $i. "-";

}

print "<br>";

/* 應用,省略個表達式*/

$i = 1;

for (;;) {

         if ($i > 10) {

               break;

           }

           print $i. "-";

           $i++;

}

print "<br>";

/* 應用*/

 

for ($i = 1; $i <= 10; print $i. "-", $i++);

print "<br>";

/* 應用 */

for ($i = 1; $i <= 10; $i++:print $i;print "-";endfor;

?> 

 

<?php

/* 應用*/

$i = 1;

while ($i <= 10) {

    print $i++ . "-"; 

}

print "<br>";

/* 應用*/

$i = 1;

while ($i <= 10):

    print $i . "-";

              $i++;

endwhile;

print "<br>";

        

/* 應用*/

$i = 1;

while ($i<20):

    print $i . "-";

    $i++;

              if ($i>10) break;

endwhile;

?> 

         2.5.3 breakcontinue語句

<?php

$i = 0;

while (++$i) {

    switch ($i) {

            case 5:

                echo "At 5<br />/n";

              break 1;  /* 只跳出switch循環*/

           case 10:

               echo "At 10; quitting<br />/n";

               break 2;  /* 跳出switch和while循環*/

           default:

               break;

            }

}

?>

 

<?php

$i=0;

while ($i++<5) {

    if ($i==2) {    // 跳出,也就是不會輸出i am 2

        continue;

    }

    echo "i am $i <br>";

}

$i = 0;

while ($i++ < 5) {

          echo "外層<br />/n";

           while (1) {

                 echo "&nbsp;&nbsp;中間層<br />/n";

             while (1) {

                   echo "&nbsp;&nbsp;&nbsp;&nbsp;內層<br />/n";

                       $i=6;

                 continue 3;

                 }

                //因為每次到內層的時候,就跳到第一層,不會被執行

                  echo "我永遠不會被輸出的~~.<br />/n"; 

          }

         echo "我也是不會被輸出的~~.<br />/n";

}

?>

2.6 數組

         2.6.1 數組類型

                   枚舉數組

                   關聯數組

                   多維數組

<html>

<body>

<?php

$student=array("0"=>array("name"=>"James","sex"=>"male","age"=>"28"),

"1"=>array("name"=>"John","sex"=>"male","age"=>"25"),

"2"=>array("name"=>"Susan","sex"=>"female","age"=>"24"));

Print $student[2][age]

?>

</body>

</html>

         2.6.2 數組初始化

                   使用數組標識符

         2.6.3 數組的應用

<?php

// 創建一個簡單的數組

$array = array(1, 2, 3, 4, 5);

print_r($array);

echo "<br>";

        

// 現在刪除其中的所有單元,但保持數組本身的結構

foreach ($array as $i => $value) {

    unset($array[$i]);

}

print_r($array);

echo "<br>";

// 添加一個單元(注意新的鍵名是5,而不是你可能以為的0)

$array[] = 6;

print_r($array);

        

// 重新索引:

$array = array_values($array);

$array[] = 7;

print_r($array);

?> 

2.7 函數

         2.7.1 內置函數

         2.7.2 自定義函數

         2.7.3 函數變量的作用域

2.8 日期和時間處理

         2.8.1 獲取日期和時間

         2.8.2 使用getdate函數獲得日期信息

         2.8.3 使用mktime函數取得一個日期的時間戳

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM