Time of Update: 2016-07-21
編寫程式時,無論怎樣小心謹慎,犯錯總是在所難免的。這些錯誤通常會迷惑PHP編譯器。如果開發人員無法瞭解編譯器報錯資訊的含義,那麼這些錯誤資訊不僅毫無用處,還會常常讓人感到沮喪。 編譯PHP指令碼時,PHP編譯器會盡其所能報告它遇到的第一個問題。這樣就產生一個問題:只有當錯誤出現時,PHP才能將它識別出來(本文後面對此問題進行了詳細描述)。正是由於這個緣故,編譯器指出出錯的那行,從表面上看來可能文法正確無誤,或者可能是根本就不存在的一行! 更好地理解錯誤資訊可以大大節省確定並改正錯誤內
Time of Update: 2016-07-21
php檔案怎麼開啟,我把這個放到百度上搜一下,然後看了在最前面的文章,看完我很鬱悶都問了自己到底是我太難了,還是他寫的我完全看不懂。我覺得會問這個問題的人如果看了他的文章肯定是更加迷茫了。所以在這邊我稍微給大家解釋一下php檔案吧。 1 PHP檔案是什麼 PHP檔案裡面都是html代碼,如果你不知道這個代碼那麼你知道怎麼開啟已經沒意義了。如果你是下載下來就是這個尾碼了,那麼正常情況只能說你下載錯了。 2 關於問php檔案怎麼開啟
Time of Update: 2016-07-21
相對於explode()來說,strtok()函數可以控制節奏。按需切割字串。其優點是:1、可以一次定義多個分隔字元。函數在執行時,是按單個分隔字元來切割,而不是按整個分隔字元,而explode則是按整個分隔串來切割的。正因此,explode可以用中文切割,而strtok則不行,會亂碼。2、在使用while或for配合strtok()遍曆時,可以隨時更換分隔字元,也可以隨時用break跳出終止切割。樣本1:示範用中文+explode來切割 $string =
Time of Update: 2016-07-21
經過搜集資料和多次測試發現,在其他web程式設計語言中相對路徑都是以當前處理檔案目錄為基準,而在php中並非如此。php中相對路徑是以當前工作目錄為 基準的,並非以當前處理檔案目錄為基準,這樣在開發過程中帶來了不少的麻煩。 用include或requice包含檔案時,檔案路徑前都加上dirname(__file__)。例如:現有a.php、b.php、c.php、 d.php4個檔案,他們關係為: b.php(與根目錄同一級) 根目錄/a.php 根目錄/c.php
Time of Update: 2016-07-21
nginx下禁止目錄執行php的方法則簡單許多,允許設定多個目錄 不知道是否我對apache那個不瞭解,如果有更好的辦法,希望大家指出共用學習。thx location ~* ^/(attachments|images)/.*.(php|php5|PHP|PHP5)$ { deny all; } 當web目錄不是根目錄,或者有多個目錄的時候可以是 location ~*
Time of Update: 2016-07-21
PHP語言功能雖然強大,但是也需要程式員們編寫規範,創造出效能優越的代碼程式。下面我們就為大家一起分享PHP效能最佳化的技巧。 “用i+=1代替i=i+1。符合c/c++的習慣,效率還高”;對global變數,應該用完就unset()掉盡量的少進行檔案操作,雖然PHP的檔案操作效率也不低的;最佳化Select
Time of Update: 2016-07-21
//作業系統function userOS(){ $user_OSagent = $_SERVER['HTTP_USER_AGENT']; if(strpos($user_OSagent,"NT 5.1")) { $visitor_os ="Windows XP (SP2)"; } elseif(strpos($user_OSagent,"NT 5.2") && strpos($user_OSagent,"WOW64")){ $visitor_os ="Windows XP 64-bit
Time of Update: 2016-07-21
header("Location:login.php")應該注意的幾個問題 header("Location:")作為php的轉向語句。其實在使用中,他有幾點需要注意的地方。 1、要求header前沒有任何輸出 但是很多時候在header前我們已經輸出了好多東西了,此時如果再次header的話,顯然是出錯的,在這裡我們啟用了一個ob的概念,ob的意思是在伺服器端先儲存有關輸出,等待適當的時機再輸出,而不是像現在這樣運行一句,輸出一句,發現header語句就只能報錯了。 具體的語句有:
Time of Update: 2016-07-21
一、引論在任何電腦裝置中,檔案是都是必須的對象,而在web編程中,檔案的操作一直是web程式員的頭疼的地方,而,檔案的操作在cms系統中這是必須的,非常有用的,我們經常遇到組建檔案目錄,檔案(夾)編輯等操作,現在我把php中的這些函數做一詳細總結並執行個體示範如何使用.,關於對應的函數詳細介紹,請查閱php手冊.此處只總結重點.和需要注意的地方.(這在php手冊是沒有的.)(www.bkjia.com)二、目錄操作首先介紹的是一個從目錄讀取的函數,opendir(),readdir(),clos
Time of Update: 2016-07-21
PHP常常因為它可能允許URLS被匯入和執行語句被人們指責。事實上,這件事情並不是很讓人感到驚奇,因為這是導致稱為Remote URL Include vulnerabilities的php應用程式漏洞的最重要的原因之一。因為這個原因,許多安全研究人員建議在php.ini配置中禁用指向allow_url_fopen。不幸的是,許多推薦這種方法的人,並沒有意識到,這樣會破壞很多的應用並且並不能保證100%的解決remote URL
Time of Update: 2016-07-21
想要獲得$smarty->display後的輸出,並作為字串賦給php變數有兩種方法: 1、ob_start ob_start(); $smarty->display("StockNews/getLeft.tpl"); $string =
Time of Update: 2016-07-21
PHP語言在進行開發之前,需要將開發環境配置妥當,這樣才能實現我們的程式完美運行。那麼,如何正確的配置PHP開發環境呢?文章將介紹Apache、MySql、PHP的下載、安裝及配置,分別講述在windows和Linux環境下開發環境的搭建。 一、下載Apache、MySql和PHP 1、Apache的下載 Apache伺服器可以通過官方提供的鏡像地址來下載windows的Apache安裝程式,不過都是英文版的,而且下載速度太慢。我建議大家去華軍、天空或者中關村下載最新版的安裝程
Time of Update: 2016-07-21
針對PHP設定檔 PHP最常用的ini函數php的配置函數就是幾個ini_*的函數,主要是針對設定檔的操作,其實就四個函數:ini_get、ini_set、ini_get_all、ini_restore。個人感覺最有用的就是ini_set和ini_get。* ini_get():擷取設定檔的選項值這個函數相信很多人都使過,就是擷取設定檔中某一個選項的值,如果是true值就返回1,如果是false值就返回0,字串就返回字串。比如手冊中的例子:
Time of Update: 2016-07-21
PHPRegex的定義:用於描述字元排列和匹配模式的一種文法規則。它主要用於字串的模式分割、匹配、尋找及替換操作。PHP中的正則函數:PHP中有兩套正則函數,兩者功能差不多,分別為:一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用“preg_”為首碼命名的函數;一套由POSIX(Portable Operating System Interface of Unix )擴充提供的。使用以“ereg_”為首碼命名的函數;(POSIX的正則函數庫,
Time of Update: 2016-07-21
在php編程中出現空白頁面可能是由以下幾個原因造成的:1、邏輯錯誤邏輯錯誤是最難排除的,從表面上看,也許代碼是合法的,是正規的,可運行起來卻不是預料之中的。為什麼呢?也許是編寫者想得不夠全面,畢竟人是人,電腦是電腦,電腦不可能完全按照人的思路去運行指令碼。在這裡,我告訴大家一個比較好的調試方法,就是使用注釋符“/* */”,注釋掉一些代碼,觀察運行情況。要想完全排除邏輯錯誤,沒有耐心是不行的,所以要靜下心來,不要著急。2、行為未定義看下面的代碼:$action = $_GET['id'];if(
Time of Update: 2016-07-21
方法一: function extend_1($file_name) { $retval=""; $pt=strrpos($file_name, "."); if ($pt) $retval=substr($file_name, $pt+1, strlen($file_name) - $pt);
Time of Update: 2016-07-21
一、描述 intval函數有個特性:"直到遇上數字或正負符號才開始做轉換,再遇到非數字或字串結束時(/0)結束轉換",在某些應用程式裡由於對intval函數這個特性認識不夠,錯誤的使用導致繞過一些安全判斷導致安全性漏洞.二、分析 PHP_FUNCTION(intval) { zval **num, **arg_base; int base; switch (ZEND_NUM_ARGS()) { case 1: if (zend_get_parameters_
Time of Update: 2016-07-21
foreach 通過在 $value 之前加上 & 很容易就能修改數組的單元,如: PHP代碼foreach($arr as &$value){ $value .= '4'; } 但這個用法也很容易造成錯誤,而且也不容易找。看例子更直截了當: PHP代碼 $arr = array('a','b','c'); $arr2 = array('d', 'e', 'f'); foreach($arr
Time of Update: 2016-07-21
在任何電腦裝置中,檔案是都是必須的對象,而在web編程中,檔案的操作一直是web程式員的頭疼的地方,而,檔案的操作在cms系統中這是必須的,非常有用的,我們經常遇到組建檔案目錄,檔案(夾)編輯等操作,現在我把php中的這些函數做一詳細總結並執行個體示範如何使用.,關於對應的函數詳細介紹,請查閱php手冊.此處只總結重點.和需要注意的地方.(這在php手冊是沒有的.)二、目錄操作首先介紹的是一個從目錄讀取的函數,opendir(),readdir(),closedir(),使用的時候是先開啟檔案控
Time of Update: 2016-07-21
用include或requice包含檔案時,檔案路徑前都加上dirname(__file__)。例如:現有a.php、b.php、c.php、d.php4個檔案,他們關係為: b.php(與根目錄同一級) 根目錄/a.php 根目錄/c.php 根目錄/dir/d.php 現在a.php中要包含b.php、c.php。寫法如下: include_once(dirname(__file__)."/../b.php");include_once(