<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      PHP完全手冊

      [摘要]一、PHP安裝設置 PHP可以在多種操作系統下運行,現在的操作系統主要分為兩類,一是Windows系列,一是UNIX系列。 在這兩個系列的操作系統中安裝設置PHP的運行環境是有很大的區別的,下面分別加以描述。 ##2 (一)類UNIX操作系統下安裝設置 目前市面上流行...
      一、PHP安裝設置
      PHP可以在多種操作系統下運行,現在的操作系統主要分為兩類,一是Windows系列,一是UNIX系列。
      在這兩個系列的操作系統中安裝設置PHP的運行環境是有很大的區別的,下面分別加以描述。
      ##2 (一)類UNIX操作系統下安裝設置
      目前市面上流行的兩大類免費的類UNIX操作系統FreeBSD和Linux,Linux系統比較流行,而且種類也挺多,如RedFlag,RedHat等系統。而FreeBSD只有一種類型,目前其Release版本是3.5,在這里以FreeBSD為例介紹類UNIX操作系統下的PHP安裝設置過程,Linux與FreeBSD是相似的。
      1.安裝
      首先到www.php.net去下載PHP的安裝文件和http://www.apache.org 下載Apache WEB服務器。一般把下載文件放入/usr/目錄下。
      接下來開始安裝設置,讀者如不明白這些參數的意義,請不要隨意改變。
      先安裝Apache和PHP。
      tar -vzxf apache_1.3.x --x代表版本號如12或13等
      tar -vzxf php-4.0.x或tar -vzxf php-3.0.x
      cd apache_1.3.x
      ./configure --prefix=/www --/www代表安裝目錄在根目錄www下
      cd ../php-4.0.x或cd ../php-3.0.x
      ./configure --with-mysql --with-apache=../apache_1.3.x --enable-track-vars
      make
      make install
      cd ../apache_1.3.x
      PHP3:./configure --activate-module=src/modules/php3/libphp3.a
      PHP4:./configure --activate-module=src/modules/php4/libphp4.a
      make
      make install
      第一、二行命令利用tar將下載的壓縮文件檔解壓還原在同名目錄下,然后在 Apache 的解壓目錄下進行環境設定,--prefix 選項代表 Apache 的安裝目錄路徑。然后進入 PHP 的解壓目錄中,進行PHP的環境設定,如果沒有使用 MySQL 數據庫,就可省略 --with-mysql 的選項,但一定要加入 --with-apache 選項,而且 Apache解壓目錄名一定要正確。設定完 PHP 之后就編譯、安裝到 Apache 的指定目錄中。然后在 Apache 解壓目錄中再完成 PHP 的模式庫安裝后,再編譯和安裝 Apache 后就初步完成了安裝工作。接著就是要設定 Apache 才能讓 Web Server 順利運作。
      2.設置
      首先設置php.ini文件,
      cd ../php-4.0.x或cd ../php-3.0.x
      PHP3:cp php3.ini-dist /usr/local/lib/php3.ini
      PHP4:cp php.ini-dist /usr/local/lib/php.ini
      讀者可以編輯ini文件以符合自己要求,當然如果不清楚設置的話,則使用缺省設置,讀者也可以指定另一個目錄,但需要在第六步設定條件--with-config-file-path=/path接著設定Apache服務器,需要在Apache的設定文件httpd .conf或srm.conf中加入下面的字串。
      PHP 3: AddType application/x-httpd-php3 .php3
      PHP 4: AddType application/x-httpd-php .php
      讀者也可以設定另外的后綴名作為php的文件名。
      ##2 (二) Windows下的安裝
      下載PHP的安裝程序,準備安裝,因為Windows系列的安裝區別不大,本文以Windows 98下的安裝為例。在安裝前你應該已經安裝好了PWS 4.0。
      1.安裝
      釋放壓縮文件到指定的目錄如C:\PHP\,然后復制php.ini-dist或php.ini-optimized到c:\windows目錄中(Windows NT和Windows 2000中應為c:\winnt),并且重命名為php.ini 。
      編輯你的php.ini文件,你可以改變extension_dir的設置為你的php的安裝路徑,如上面所說的“c:\php”,選擇你要加裝的php的擴展模塊,在ini文件里的extension=后面加入php_*.dll行,你也可以在腳本(script)里動態加載。PHP也提供了一些可以提供其它功能的附加模塊,可以從相關網站下載。
      2.設置
      以上步驟完成以后,需要注意檢查是否安裝了DCOM98,如果沒有,還要安裝DCOM98,這可以在完整版的VB6中找到。還需要設置注冊表,一般在下載的PHP壓縮包里含有名為PWS-php4.reg的注冊表文件。需要先用記事本修改這個文件,把其中的“[PUT PATH HERE]”替換為PHP的解壓目錄,需要注意目錄分隔要用雙斜線“\\”。存盤后在右鍵菜單中把它合并到注冊表中就行了。
      3.PHP附加庫(擴展模塊)
      為了擴展PHP的功能,PHP提供了許多附加庫,這些附加庫都是以DLL文件的形式提供的,在使用前需要修改php.ini文件,用Extention設置所需的附加庫。下表是常用的附加庫,更多的附加庫可以到網上下載。
      Php_calendar.dll 日歷轉換
      php_crypt.dll 加密模塊
      php_dbase.dll Dbase的函數模塊
      php_imap4r2.dll IMAP 4 函數
      php_ldap.dll LDAP函數
      php_msql1.dll mSQL 1客戶
      php_msql2.dll mSQL 2客戶
      php_mssql.dll MSSQL 客戶
      php3_mysql.dll(PHP 4內建) MySQL 的函數模塊
      php_nsmail.dll Netscape郵件函數
      php_oci73.dll Oracle函數模塊
      php_zlib.dll ZLib函數模塊
      ##1 二、PHP語言入門
      PHP腳本語言的使用并不難,如果有其它程序設計語言基礎,可以很快掌握,即使沒有其它語言基礎經過稍多的學習也可以輕易掌握它。PHP有一個比較方便的專用編輯器PHPEditor可供使用,也可用UltraEdit、Editplus這樣的編輯器,根據你的喜好選擇。
      ##2 (一)語法基礎
      1.如何在頁面嵌入PHP代碼
      PHP可以嵌入到HTML的代碼中間,也就是說可以把HTML和PHP代碼混合在一起使用,這樣寫起代碼會很愜意的。當然要有能區分PHP代碼和HTML的方法,可以使用以下4種方法:
      (1)<? echo (“這是最常用的方式”); ?>
      (2)<?php
      echo(“如果你想服務于XML文檔就是用這種方式”);
      ?>
      (3)<script language=“php”>
      echo (“指定腳本語言的方式”);
      </script>
      (4)<% echo (“你也可以象ASP的風格一樣寫”); %>
      上面第(1)種第(4)種方式在Windows 98下需要單獨設置才能使用。
      2.程序的注釋和如何結束語句
      在PHP程序里,注釋有如下三種注釋方式:
      (1)/* 第一行
      第二行
      多行注釋 */
      (2)// 單行注釋
      (3)# 單行注釋
      上面這三種注釋可以混合使用,讀者可以根據習慣選用,需要注意的是多行注釋不能嵌套多行注釋。
      PHP語句之間使用“;” 分隔,它也是語句結束符。
      3.小小的范例
      我們了解了PHP簡單的編碼規范,現在可以編寫一個簡單的范例如下:
      <html>
      <head>
      <title>第一個PHP程序</title>
      </head>
      <body>
      <?php echo “你好,這是我第一個PHP程序”; ?>
      </body>
      </html>
      上面的例子實際上是一個標準的HTML的頁面,因為PHP是解釋執行的,所以只需把此文件放如我們設好的PHP環境里,就可以在瀏覽器上看到“你好,這是我第一個PHP程序”。
      ##2 (二)常量和變量
      首先看下面一個實例
      范例:test2_1.php
      <?php
      //常量的演示
      echo “_FILE_”; //輸出:test2_1.php
      echo “這是一個常量”; //輸出:這是一個常量
      define(“THECONSTANT”,“這是一個自定義的常量”);
      echo THECONSTANT; //輸出:這是一個自定義的常量
      //變量的演示
      $StrOutput=“這是一個變量”;
      echo $StrOutput; //輸出:這是一個變量
      echo “變量是這樣誕生的:$StrOutput”; //輸出:變量是這樣誕生的:這是一個變量
      echo “問題是這樣出現的:$StrOutPut”; //輸出:問題是這樣出現的:
      ?>
      可以從以上的范例看出,在編寫PHP文件的時候,可以省略HTML標頭。
      1.常量
      上例中“_FILE_”就是一個常量,而這個常量是PHP系統內定的,就是代表PHP的當前文件名,當然還有很多的常量,象“TRUE”、“FALSE”等,讀者如果需要的話可以去PHP的官方網站查詢;如果覺得常量不夠使用的話,也可以自己定義常量,就象上例的define(“常量名”,“常量的取值”)這種方式定義常量。
      2.變量
      PHP的變量是非常有意思的,上例中“$StrOutput”就是一個變量,可以看到變量前面都有一個“$”(美元)符號,所以非常好區分變量和程序里別的語句,同時PHP中的變量是可以不用預先定義而直接在代碼里引用的,而且使用了“$”這樣的符號,可以使我們的程序獲得更大的自由,不但可以象平常一樣引用變量,還可以在一個字符串里直接寫,而PHP能自動獲得變量的值,但是PHP對大小寫區分很嚴格,在上面的例子中就很清楚的說明了這一點。
      (1)變量的作用范圍
      PHP里的變量可以直接引用,我們定義了一個頁面級的變量,它和在函數里的同名變量之間有什么關系?這就是變量的作用范圍問題,如下例:
      范例test2_2.php
      <?php
      $strtest="你說";
      function output1()
      {
      echo $strtest;
      }
      function output2()
      {
      global $strtest;
      echo $strtest;
      }
      output1(); //輸出:
      output2(); //輸出:你說
      ?>
      從上例可以看出,PHP如果直接在函數中引用與頁面變量同名的變量,它會認為函數的變量是一個新的變量,當然什么也不輸出,但如果我們在其前面增加一個“global”的話,就可以得到頁面的同名變量的值,另一種同樣的方法是$GLOBALS["strtest"];
      (2)變量的變量
      在php中變量與許多常用語言最大的區別就是增加了一個‘$’前綴,為什么單獨拿出來講呢?因為有了這一個前綴,同樣增加了PHP的獨特的一種處理方式,一個前綴代表普通的變量,但是兩個前綴呢?這就是變量的變量,這樣說大家可能有些不明白,請看下例。
      范例:test2_3.php
      <?
      $name=″hello″;
      $$name=″world″; //等同于$hello=″world″;
      echo ″$name $hello″; //輸出:hello world
      echo ″$name $$name″; //同樣輸出:hello world
      for($i=1;$i<=5;$I++)
      {
      ${var."$i"}=$i;
      }
      echo $var3; //輸出:3
      ?>
      大家從上面的例子基本上可以理解$$name了,PHP的標準定義則是${$name}。我們有了變量的變量就可以實現動態增加變量了,這簡直就是神奇。
      (3)變量的類型
      學過其它語言的讀者會發現PHP定義的變量怎么沒有定義類型呢?實際上PHP定義的變量缺省是沒有類型的,變量在使用時由PHP自動自動確定變量的類型。就象下例演示的一樣。
      范例test2_4.php:
      <? php
      $strtype="字符串";
      /*添加字符串*/
      $strtype=$strtype."再增加一些字符串 ";
      /* 另一種增加字符串方式,并換行*/
      $str .= "\n第二行的字符串";
      /* 得到第一個字符*/
      $strtype='This is a test.';
      $first = $str[0]; //輸出:T
      /*得到最后一個字符*/
      $strtype='This is still a test.';
      $last=$str[strlen($str)-1]; //輸出:.
      //整數類型例子
      $strtwo="2.5test";
      $inttype=1;
      echo ($inttype+$strtwo) //輸出:3.5
      echo ("$inttype".$strtwo) //輸出:12.5test
      //浮點數
      $float1 = 1.732;
      $float2 = 1.4E+2;
      ?>
      這樣大家可以看出$strtype實際上是一個字符串型的變量,PHP支持五種變量類型:String、Integer、Floating-point numbers (Double)、Array、Object。
      String是字符串類型。字符串變量是最常用的類型,兩個字符串連接符則是".",從上面的例子可以看出,PHP支持以“\”后面的有特殊意義的字符,如“\n”代表回車。
      integer 為整數類型。在 32 位的操作系統中,它的有效范圍是 -2,147,483,648 到 +2,147,483,647。要使用 16 進制數可以在前面加 0x。
      double 為浮點數類型。在 32 位的操作系統中,它的有效范圍是 1.7E-308 到 1.7E+308。對象和數組這兩種類型比較復雜,請看函數和類。
      我們也可以使用settype(變量,數據類型)函數強制轉換數據類型,使用gettype(變量)獲得變量類型。也允許這樣強制轉換$inttype = (int) $strtype;。
      ##2 (三)運算符
      1.算術運算符
      算術運算 (arithmetic operators) 符號,是用來處理四則運算的符號,這是最簡單,也最常用的符號,幾乎所有語言的算術運算符都差不多,如^00100010a^。
      2.邏輯運算符
      邏輯運算通常用來獲得邏輯值的真假,在所有的編程語言里,邏輯運算符是非常重要的,邏輯運算符如^00100010b^所示。
      3.關系運算符
      關系運算就是比較大小用的,如^00100010c^所示。
      4.位運算符
      PHP有下面一些二進制位運算符如^00100010d^。
      5.運算符的優先級
      不同的運算符在同一行程序里有不同的運算順序,PHP程序里的運算順序如^00100010e^,越往下表明運算符的優先級別越高,同時應注意結合規則。
      ##2 (四)流程控制語句
      編程人員最基本的工作之一就是要告訴計算機下一步的動作,而流程控制語句正是這方面讓計算機做出選擇,流程控制語句就象一個灌溉田地的水渠,在通過各個分岔時引導程序走向我們要求的地點。
      1.if條件語句
      if條件語句是我們最常用的一種分支語句,用法也符合人們思維的習慣,就想:if如果 expression(熊倪跳水得了最高分)是真的話 statements可以拿到金牌 else(否則)statements薩烏丁拿金牌。它在定義上有三種形式:
      (1)第一種最簡單的形式。
      if (expression) statement;
      (2)第二種帶有else(否則)的形式。
      if (expression) {
      statement1;
      } else {
      statement2;
      }
      (3)第三種帶有elseif的形式。
      if (expression) {
      statement1;
      } elseif {
      statement2;
      } else{
      statement3;
      }
      if條件語句是允許嵌套的,也就是在if語句中含有另外的if語句,但要注意嵌套層次,否則不能得到想要的結果。
      2.循環語句
      有時我們需要一遍一遍的重復做相同的事,如果我們都要一次一次的去做的話,是非常頭疼的事,在計算機中則有專門的循環語句來做這些事情,當然這也是計算機的一個強項。
      循環語句象一個圓,從開始到結束可以一遍一遍的執行,但最好不能是圓,否則我們會陷入死循環。因此,我們使用循環語句的時候,要有一個良好的出入口。
      循環一般可以分為以下幾種。
      (1)while循環,也叫“當型循環”,就是說“當條件為真就執行循環體”,在PHP中的定義如下:
      while (expression)
      {statement}
      這種循環先判斷表達式為真再執行,可能一次也不執行。
      (2)do while循環叫做“直到型循環”,它最少執行一次,意思就是“先執行循環體直到條件為真才退出”,PHP的定義為
      do {
      statement
      } while (expr);
      上面兩種循環都是不知道循環的次數,或者在條件比較模糊的情況下使用。
      (3)for循環,在PHP4中有兩種for循環,一是for,另一是foreach循環。他們主要的區別在于:
      for循環用于循環次數已知的循環;
      foreach則是針對數組和散列的循環;
      for循環的PHP定義如下:
      for (expr1; expr2; expr3) {
      statement
      }
      下面是一個簡單的例子:
      <?php
      for ($i = 1; $i <= 10; $i++) {
      echo $i;
      }
      ?>
      PHP有數組和散列,后面介紹它們的概念,數組元素個數沒有固定,如果要訪問每一個元素,用foreach可以從第一個元素訪問到最后一個元素,這樣我們可以不必求出元素的個數,就能遍歷整個數組,在PHP中foreach循環的定義如下:
      foreach(array_expression as $value) statement //普通數組
      foreach(array_expression as $key => $value) statement //散列
      請做一下下面的例子:
      <?php
      // foreach例一
      $a = array (1, 2, 3, 17);
      foreach ($a as $v) {
      echo "Current value of \$a: $v.\n";
      }
      // foreach例二
      $a = array (1, 2, 3, 17);
      $i = 0;
      foreach($a as $v) {
      echo "\$a[$i] => $k.\n";
      }
      // foreach例三
      $a = array (
      "one" => 1,
      "two" => 2,
      "three" => 3,
      "seventeen" => 17
      );
      foreach($a as $k => $v) {
      echo "\$a[$k] => $v.\n";
      }
      3.SWITCH多條件語句
      在學習if條件語句時,我們注意到如果條件非常復雜的時候,就象我們排一個日程表時,如果再使用if語句就會非常的麻煩,而且程序不易閱讀,這時我們推薦使用SWITCH語句,實際上一般只要是復合的條件都可以使用SWITCH語句,因為它能幫助我們編出結構清晰和比較容易改變條件表達式,PHP定義如下:
      switch (expression) {
      case condition1:
      statement1;
      break;
      case condition2:
      statement2;
      break;
      ......
      default:
      statement n;
      break;
      }
      這時要介紹兩個特殊的流程控制語句:break和continue。
      break是可以跳出當前循環體的語句,而continue則是從當前執行continue語句處跳到執行條件判斷的地方繼續執行,如下例子:
      <?php
      For($I=1;$I<=10;$I++)
      {
      if ($I==1) continue;
      echo "測試:".$I;
      if ($I==2) break;
      }
      ?>
      上面的程序輸出則是:測試:2,而且永遠也執行不到$I=3。
      4.引用文件
      在我們編程的過程中,肯定會遇到很多的地方需要許多相同的模塊或者函數,當然我們也可以使用復制和粘貼的方法把程序塊放入到程序里,而一旦我們要修改這些語句中的一處,則必須修改所有粘貼的代碼,這當然很累,所幸PHP提供了引用文件的方法,他們就是require,require-once,include,include-once。require方法會程序在執行前先讀入 require 所指定引用的文件,使它變成 PHP 程序網頁的一部份。而PHP的include方法則是PHP 的網頁在遇到 include 所指定的文件時,才將它讀進來。這種方式,更符合人們的習慣。
      在我們編程時有時還會遇到這樣一個問題,在我們極力保證函數和類的獨立性和公用性的同時,而如果在程序里面我們調用了一個非公用文件里的類,但我們的另一個處理文件也調用了這個文件里的這個類,那么程序將會出錯,說是重定義了這個類,因此,我們將不得不去重寫文件或者丟棄它的獨立性,但在PHP4里不存在這個問題,因為PHP4可以使用require-once和include-once方法,顧名思義也就是他們只調用一次我們所需要的文件,如果有兩次調用文件的話,第二次調用的文件不起作用。
      ##2 (五)數組
      經過上面的學習,我們基本具有了使用PHP編程的條件,而我們所學的也是一切編程的基礎,但若想更進一步,就需了解更強大的數據類型:數組。
      假如變量是可以放入一本書的盒子的話,那么數組就是可以放許多書的書架,在PHP中不止可以放書,還可以放別的物品。
      1.普通數組
      我們在C、VB等語言里使用的數組,都是以數字作為下標來索引數組的值,在PHP中是這樣表示的:$a[1]=1,$a[2]=2...$a[n],雖然PHP的普通數組比C語言在數據類型方面前進了一大步(C語言里可以使用結構代替),而真正比C語言優越的是引入了哈希表(hash table聯合數組)。
      2.哈希表(聯合數組)
      可能大家這時候對哈希表數組,還是不太了解,實際上在C語言里我們使用了枚舉的數據類型,就是譬如我們定義了星期的枚舉變量,我們可以讓這個枚舉里含有星期一到星期日的名字,這樣我們就可以直接引用星期的名字也能得到正確的值了,但是枚舉需要預定義,數量也是定義好的,才能引用,在PHP將其歸類到了這種聯合數組,也就是說我們的下標不必非采用數字,這樣數組的下標也成了我們可以發揮的地方。請看下例
      范例:
      <?php
      $a[1]= $f; //普通數組
      $a["apple"]= "sweet"; //聯合數組
      $a[1][0]= $f; //二維數組
      $a["apple"][2]="tart"; //普通數組和聯合數組連用
      $a["apple"][4]["color "][0]= "bad"; //四維數組
      ?>
      實際上數組的維數最好不要超過三維,否則會給服務器帶來極大的負擔,就有些得不償失了。
      ##2 (六)函數
      函數就是能執行特定功能的語句塊。在這些年編程語言發展的趨勢就是代碼的重用性和結構清晰,象C的輸入輸出等就是用函數來完成的,在PHP里也是這樣的,函數在PHP運用非常廣泛,也是各種PHP函數使PHP變為強大的WEB編程腳本語言的原因之一,我們在前面的學習的過程中也遇到了不少,如“echo”、“require”等,而我們可以通過用戶定義的函數使程序結構變得更清晰、更合理以及代碼更簡潔。PHP已經預定義了大量的函數,讀者需要詳細資料的話可以查詢PHP的網站,而我們這里主要講的是如何定義使用用戶定義的函數。
      1.用戶定義函數
      用戶在解決一些問題時需要用戶多次完成同樣的工作,還有就是PHP沒有解決的功能等這些問題,我們則提倡使用函數。PHP定義函數的方式,沒有象變量定義那樣非常嚴格,在這里大小寫可以混用,可以在定義的時候使用大寫,使用的時候用小寫的函數名,從這點上可以看出PHP是非常地為編程人員著想,PHP的函數定義如下
      function 函數名(參數1,參數2,...)
      { 語句塊
      return 返回值}
      PHP的函數可以有返回值,也可以沒有返回值,這樣可以省略上面的返回語句。
      2.參數
      <?php
      $str=″我是參數1″;
      $str2=″我是參數2″;
      function testFunc($testarg1,testarg2,testarg3=″我是測試″)
      {
      echo $testarg1.″\n″;
      echo $testarg2.″\n″;
      echo $testarg3.″\n″;
      $testarg1=$testarg1.″測試″;
      $testarg2=$testarg2.″測試″;
      }
      testfunc($str,&$str2);
      echo $str.″\n″;
      echo $str2.″\n″;
      /*
      調用里后輸出:
      我是參數1
      我是參數2
      我是測試
      我是參數1
      我是參數2測試
      */
      ?>
      請注意看上面的函數,PHP的參數使用比較靈活,我們可以象C里面一樣使用“&”引用參數,在函數里改變參數的值的話,就直接改變了這個變量的值,也可定義參數的缺省值,這樣可以在需要的時候省略參數。
      InstallShield 5.1由InstallShield公司開發,它提供了全面的軟件安裝盤制作技術。InstallShiteld 5.1與舊版本相比采用了全新的集成開發環境(IDE),使用戶僅通過鼠標就能完成安裝盤的制作。InstallShiteld 5.1分為測試版、普通版和國際版,其中國際版支持用戶在安裝過程中使用本地語言文字。下面將介紹InstallShiteld 5.1國際版的使用方法。
      ##1 一、InstallShiteld 5.1的安裝與卸載
      1.安裝的系統要求如^00100011a^
      2.安裝操作步驟如^00100011b^
      3.卸載InstallShiteld 5.1
      安裝完成后,安裝程序除了將主要程序文件復制到指定的目標文件夾外,還將部分DLL文件復制到Windows的系統目錄中,并自動在C盤根目錄下建立一個名為“My Installations”的文件夾,作為所制作的安裝工程的默認存放位置。在卸載前,先將該目錄下的工程進行備份,再打開Windows控制面板中的“添加/刪除程序”,選擇“InstallShield 5.1 Professional Edition”,單擊“添加/刪除”,確認后即可完成卸載。


      標簽:PHP完全手冊 
      日韩精品一区二区三区高清