天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP的十個高級技巧(上中下)第1/3頁

 
全球超過300萬個互聯網網站的管理員都在使用php,使得它成為最為普及的服務器端腳本語言之一。其特點是運行速度快、穩定可靠、跨平臺,而且是開放源代碼軟件。隨你使用的水平不同,php可以很簡單,也可以很復雜,可以只使用它發送HTML表格元素,還可以在php應用程序中集成Java和XML。 

  如果你對php有一定的了解或者看過一些初步的教材,這些技巧可以擴展你對php的認識,使你掌握一些常見的和高級的php功能。 

一、把php安裝為Apache的DSO 
  php在Linux/Unix平臺上經常與Apache搭配使用,在安裝php時,有三種安裝方式可供選擇:靜態模式、動態模式(DSO)、CGI二進制模式。 

  由于易于維護和升級,我強烈建議以DSO方式安裝php。例如,初次安裝時如果安裝的php僅支持數據庫,隨后希望再安裝支持加密的模塊,只要運行“make clean”,添加新的配置選項,然后再運行“make”和“make install”即可,一個新的php模塊就會安裝在Apache中適當的位置上,然后重新啟動Apache,而無需重新編譯Apache。 

  下面的步驟將安裝一個全新的Apache,并以DSO方式安裝php: 

  1、從Apache軟件基金會得到最新版本的Apache源代碼; 

  2、把得到的源代碼放到/usr/local/或者/opt/目錄下,或者你指定的任意目錄中; 

  3、運行Gunzip對文件進行解壓縮,得到后綴為.tar的文件; 

  4、運行下面的命令,把文件安裝到apache_[version]目錄中: 

   tar -xvf apache_[version].tar 

  5、進入/usr/local/apache_[version]目錄(或者在步驟4中安裝壓縮文件的目錄); 

  6、鍵入下面的命令為編譯Apache作準備,用你自己的路徑替換其中的[path],例如,/usr/local/apache[version],現在已經設置了mod_so的新值,它將允許Apache使用DSO模塊; 

  7、回到提示符狀態后鍵入make,并等待再次回到提示符狀態; 

  8、執行“make install”命令。 

  至此,Apache已經安裝完畢,系統將重回到提示符狀態。接下來我們開始安裝php: 

  1、在php主頁的下載區中找到最新版本的鏈接; 

  2、把文件下載到一個適當的目錄中,例如/usr/local/或/opt/或者你指定的任意目錄中; 

  3、運行Gunzip對文件進行解壓縮,得到后綴為.tar的文件; 

  4、執行下面的命令把文件安裝在php-[version]目錄中: 

   tar -xvf php-[version] 

  5、進入/usr/local/php-[version]目錄或在步驟4中指定的目錄; 

  至此,已經作好了以DSO方式安裝php的準備工作,唯一需要修改的配置選項是with-apxs(這是Apache的bin目錄中的一個文件)。為了得到較高的性能,我沒有安裝對MySQL的支持模塊。 

  ./configure --with-mysql=/[path to mysql] --with-apxs=/[path to apxs] 

  6、回到提示符狀態后執行make命令,等待重新返回到提示符狀態; 

  7、執行make install命令。 

  至此,系統以DSO方式在Apache的模塊目錄中安裝了php,并對Apache的httpd.conf文件作適當的修改后返回到提示符狀態。回到提示符狀態后,你還需要對Apache的httpd.conf文件作一些修改。 

  1、找到包含有ServerAdmin的一行,添加你的電子郵件地址,如下所示: 

   ServerAdmin [email protected] 

  2、找到以ServerName開頭的行,把它改為真正的值,例如: 

   ServerName localhost 

  3、找到內容如下所示的小節: 

  # And for php 4.x, use: 

  # 

  #AddType application/x-httpd-php .php 

  #AddType application/x-httpd-php-source .php

  修改這些行的內容,使php 4.0的AddType不再成為注釋,并添加希望在php中使用的文件后綴名,上面的內容變為如下所示的內容: 

  # And for php 4.x, use: 

  # 

  AddType application/x-httpd-php .php .phtml 

  AddType application/x-httpd-php-source .php

  保存文件,回到上一級目錄,執行下面的命令重新啟動Apache: 

  ./bin/apachectl start 

  如果在啟動時沒有出現錯誤提示信息,就可以通過創建一個名為phpinfo.php的只有如下所示一行內容的文件,對安裝的Apache、php進行測試: 

  <? phpinfo() ?> 

  把這個文件保存到Apache的文檔根目錄(htdocs)中,然后開啟瀏覽器,鍵入http://localhost/phpinfo.php地址,屏幕上就會出現許多的變量和它們的值。 

  如果要重新配置php,需要再次運行make clean命令,然后執行帶有一系列選項的./configure命令,然后再執行make和make install命令,Apache的目錄模塊中就會出現一個新的模塊,只要再重新啟動Apache加載這個新的模塊,就一切OK了。 

二、使用php本身的對話 
  php 4.0中最令人期待的特性應該是對對話的支持,php 3.0的用戶必須使用第三方的軟件否則就不能使用對話,不支持對話一直是php最大的缺憾之一。 

  只要用戶在瀏覽你的網站,你就可以利用對話維護與特定用戶有關的變量,而無需建立多個cookie、使用隱藏表格字段或將信息存儲在數據庫中。 

  在一個網頁上啟動一個對話,就會使php引擎知道你想啟動一個對話(如果還沒有啟動)或者繼續當前的對話: 

session_start(); 

  啟動一個對話將通過cookie向用戶發送一個識別字符串(例如940f8b05a40d5119c030c9c7745aead9),在服務器端,會創建一個與識別字符串匹配的臨時文件,例如sess_940f8b05a40d5119c030c9c7745aead9,這個文件中包含注冊的對話變量以及它們的值。 

  用來顯示對話的作用的最常見的例子是訪問計數器。啟動php模塊,確保php代碼是文件的第一行,在php代碼之前不要有空格、HTML代碼和其他的代碼。因為對話會發送一個頭部,因此如果在session_start()之前有空格和HTML代碼,就會得到一個出錯信息。 

  <? 

  // 如果還不存在一個針對某用戶的用戶,則啟動一個對話: 

  session_start(); 

  然后注冊一個名字為count的變量: 

  session_register('count'); 

  注冊一個對話變量后,只要對話存在,名字為count的變量也就存在。現在,count變量還沒有被賦值,如果對它執行加1操作,它的值就變為了1。 

  $count++; 

  把上述內容綜合在一塊兒,如果還沒有啟動一個對話,就會啟動一個對話;如果不存在一個對話id,就為用戶指定一個好了,注冊一個名字為$count的變量,對$count執行加1操作表示用戶已經首次訪問了該網頁。 

  要知道用戶在當前的對話中訪問本頁面的次數,只要顯示$count變量的值即可: 

  echo "<P>You've been here $count times.</p>"; 

  全部的訪問計數器代碼如下所示: 

  <? 

  session_start(); 

  session_register('count'); 

  $count++; 

  echo "<P>You've been here $count times.</p>"; 

  ?> 

  如果重新加載上述的腳本文件,就會發現變量count的值增加了1,很酷吧。 

  還可以在對話中注冊一個數組變量,假設我們注冊了一個名字為$faves的變量: 

  $faves = array ('chocolate','coffee','beer','linux'); 

  可以象注冊一個簡單變量那樣注冊一個數組變量: 

  session_register('faves'); 

  引用數組變量與引用簡單變量沒有什么二樣,如果一個用戶在網頁上指出在生活中的愛好時,可以把他的愛好注冊到一個被稱作$faves的數組變量中,然后可以在另一個網頁中很方便地把這些愛好顯示出來: 

  <? 

  session_start(); 

  echo "My user likes: 

  <ul>"; 

  while (list(,$v) = each ($faves)) { 

  echo "<li>$v"; } 

  echo "</ul>"; 

  ?> 

  然后你就得到了一個關于用戶愛好的清單。 

  對話變量不能被查詢字符串覆蓋,也就是說我們不能輸入http:///www.yourdomain.com/yourscript.php?count=56給注冊變量$count指定一個新值,這一點對于安全很重要:只能在服務器端的腳本中刪除一個沒有注冊的對話變量。 

  如果要完全刪除一個對話變量,首先需要從系統中注銷它: 

  session_unregister('count'); 

  要完全刪除一個對話變量的腳本是非常簡單,如下所示: 

  session_destroy(); 

  使用對話變量可以減少訪問數據庫的頻率,使代碼更加清晰,而且可以減少對用戶發送的cookie的數量,它是最簡單的方法了。

php技術PHP的十個高級技巧(上中下)第1/3頁,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 肉奴隷 赤坂丽在线播放 | babesvideos欧美最新 | 亚洲免费综合色视频 | 69精品人妻一区二区三区蜜桃 | 水蜜桃亚洲一二三四在线 | 无人视频在线观看免费播放影院 | 久久久无码精品无码国产人妻丝瓜 | 久草在在线免视频在线观看 | 暖暖视频免费观看高清完整版 | 肉肉高潮液体高干文H | 亚洲91av | 亚洲理论在线a中文字幕 | 老妇高潮潮喷到猛进猛出 | 秋霞电影网午夜免费鲁丝片 | 尤物yw193can入口 | 成人欧美尽粗二区三区AV | 波多野结衣 熟女 | 乳交高H糙汉宠文 | 精品亚洲永久免费精品 | 草699一码二码三码四码 | 黄色三级视频网站 | 九九九精品国产在线 | 91嫩草私人成人亚洲影院 | 99热在线视频| 国产又粗又猛又爽又黄的免费视频 | av网站视频在线观看 | 曰本少妇高潮久久久久久 | 亚洲国产在线精品第二剧情不卡 | 偷偷鲁手机在线播放AV | 色情www日本欧美 | 亚洲色综合狠狠综合区 | 日日夜夜噜噜 | 欧美国产精品久久久乱码 | 66美女人体 | 综合精品欧美日韩国产在线 | 精品国产自在现线拍400部 | no视频在线观看 | 亚洲日韩乱码人人爽人人澡人 | 囯产精品久久久久免费蜜桃 | 总攻催眠受的高h巨肉np | 国产成人啪精品视频免费网 |