Time of Update: 2018-12-03
php已經發行到了5.2.10了,5.3.0rc4也已公布。6.0早就出了測試版。php是日趨完美。呵呵但是在c++中有個重要的概念就是鏈表。而鏈表中有個重要概念就是二叉樹。實現二叉樹關鍵是一個節點如何表示。我們知道c++中可以使用以下代碼錶示一個二叉樹的節點(使用模板):template <class elemType>struct nodeType{ elemType info; nodeType<elemType> *llink;
Time of Update: 2018-12-03
定義和用法base_convert() 函數在任意進位之間轉換數字。文法base_convert(number,frombase,tobase)參數描述number必需。原始值。frombase必需。數字原來的進位。tobase必需。要轉換的進位。說明返回一個字串,包含 number 以 tobase 進位的表示。number 本身的進位由 frombase 指定。frombase 和 tobase 都只能在 2 和 36 之間(包括 2 和 36)。高於十進位的數字用字母 a-z 表示,例如
Time of Update: 2018-12-03
定義和用法pack() 函數把資料裝入一個二進位字串。文法pack(format,args+)參數描述format必需。規定在封裝資料時所使用的格式。args+可選。規定被封裝的一個或多個參數。format 參數的可能值:a - NUL-padded stringA - SPACE-padded stringh - Hex string, low nibble firstH - Hex string, high nibble firstc - signed charC - unsigned
Time of Update: 2018-12-03
function div($dividend, $divisor){ try{ echo "$dividend 除以 $divisor ->/n"; if($divisor == 0){ throw new Exception('除數不能為零', 101); } $result = $dividend /
Time of Update: 2018-12-03
<?phpdb.class.phpclass db {protected $mysqli;protected $showError;public function __construct($configFile="password.inc.php",$showError=true){require_once($configFile);$this->mysqli=new
Time of Update: 2018-12-03
<?php$str = "b b ca";$reg = "/a/";echo preg_match($reg,$str,$result);var_dump($result);/* *str = "abc" regex = "[a]" * *在PHP中,上面的正則可以匹配 *在Java中,是不可以匹配的 * * *//* * PHP 中的Regex匹配 * *其匹配函數格式為 pre_math(partten,string,result) *1 .partten 為正則 *2.
Time of Update: 2018-12-03
PHP執行系統命令簡介在PHP中調用外部命令,可以用如下三種方法來實現:方法一:用PHP提供的專門函數(四個):PHP提供4個專門的執行外部命令的函數:exec(), system(), passthru(), shell_exec()1)exec()原型: string exec ( string $command [, array &$output [, int &$return_var ]] ) 說明: exec執行系統外部命令時不會輸出結果,而是返回結果的最後一行。如果
Time of Update: 2018-12-03
1. don't comment your code properly with something like phpDoc 2. don't see the need and/or benefits of a good programming IDElike Zend Studio or Eclipse PDT 3. have never used some form of version control like Subclipse 4. don't adopt
Time of Update: 2018-12-03
PHP 獨特的文法混合了 C、Java、Perl 以及 PHP 自創新的文法。它可以比 CGI或者Perl更快速的執行動態網頁。用PHP做出的動態網頁面與其他的程式設計語言相比,PHP是將程式嵌入到HTML文檔中去執行,執行效率比完全產生HTML標記的CGI要高許多。下面介紹了十個PHP進階應用程式技巧。1, 使用 ip2long() 和 long2ip() 函數來把 IP 位址轉化成整型儲存到資料庫裡。這種方法把儲存空間降到了接近四分之一(char(15) 的 15 個位元組對整形的 4
Time of Update: 2018-12-03
看了標題,也許很多程式員會反感的說:“程式員的做人問題先不用談,你想出來這個標題,那你做人是不是有問題吧!”筆者本人並不反駁這樣的說法,每個人都有自己的做人原則。法國人的那句俗話說的好:“我不苟同你的思想,但是我絕對扞衛你思想的自由”。 是,這是站在個人的立場上可以那麼說。但是如果站在一個團隊的立場上呢?一切不盡然了!無論馬拉車的原理也好,還是木桶原理也好,西方人整出來那些比喻確實是值得讚賞的。但是個人認為還是欠缺一些!
Time of Update: 2018-12-03
<? //設定PHPExcel類庫的include path set_include_path('.'. PATH_SEPARATOR .'inc\PHPExcel'.PATH_SEPARATOR.get_include_path()); /** * 以下是使用樣本,對於以 //// 開頭的行是不同的可選方式,請根據實際需要 * 開啟對應行的注釋。* 如果使用 Excel5 ,輸出的內容應該是GBK編碼。 */ require_once
Time of Update: 2018-12-03
左側為資料結構中的heap->free_buckets[ZEND_MM_NUM_BUCKETS*2];右側是segment,每次分配256個位元組+segment結構+zend_mm_block_info結構(segment結構能夠明確找到向作業系統申請記憶體後的指標,並有鏈表結構進行串聯heap->segments_list = segment)zend_mm_block_info結構明確說明這個塊用到的實際大小以及前一個塊的大小,並且有標記標註上一個塊的狀態(ZEND_MM_BL
Time of Update: 2018-12-03
http://localhost/index.php?action=newslist 1、<?php require(…這裡要載入公用的函數庫..)?>2、<?php include(“top.php”) ?> //專門建立一個top.php 用於解析網站頭部檔案 什麼叫頭部?就是<html><head>……</head>
Time of Update: 2018-12-03
安裝WAMP所謂WAMP,是指在Windows系統(W)下安裝Apache網頁伺服器(A)以及MySQL資料庫(M)和PHP指令碼 引擎(P)而搭建起來的PHP網路伺服器環境,當然,在LAMP環境肯定是 比WAMP環境要好的,可是由於Windows的易用性,所以,我們在做前期開發或者測試某些CMS的時候,使用WAMP環境甚至很方便更實用一些。
Time of Update: 2018-12-03
眾所周知,當php.ini裡面的register_globals=on時,各種變數都被注入代碼,例如來自 HTML 表單的請求變數。再加上 PHP 在使用變數之前是無需進行初始化的。那麼就有可能導致不安全,假如有人惡意發出這麼一個get請求"http://yourdomain/unsafe.php?GLOBALS=",那麼就會清除$GLOBALS變數的值而導致不安全。所以我們可以這樣子寫[php]if ((isset($_REQUEST['GLOBALS']) OR isset($
Time of Update: 2018-12-03
在php擴充中,時常需要接受php類型的數組作為參數,php數組的參數都是zval類型的,並不適合在擴充中方便的使用,一般都要提前轉換成c或cpp中的資料類型。首先看一個轉換的例子:void convert_to_vector(const zval * vals, vector<string> &valList) ...{ // create the list to write HashPosition pos; zval
Time of Update: 2018-12-03
在php程式中使用mb_convert_encoding()方法進行字元編碼轉換大家都很熟悉了,平時也在大量的使用。而且在一般情況下該方法也表現的足夠好,值得表揚。但在一個項目中我們需要使用它進行UTF8到GBK的轉換,在轉換一些特殊字元時發現了一個不大不小的問題。具體表現為mb把在utf8可編碼的字元而在gbk中不可編碼的字元都轉成了/0x00/0x80,這樣就導致轉換後的gbk字元是有問題的。
Time of Update: 2018-12-03
作為DSO模式加入apache的啟動列表後,都會通過AddType application/x-httpd-php .php 命令把對以php尾碼的檔案請求交由libphp5.so進行處理。比如對http://www.example.org/foo/1.php的請求會交由libphp5.so進行處理,這個DSO會對1.php進行php源碼的編譯和執行,產生最終的html回應檔交換給apache,進而返還給瀏覽器。
Time of Update: 2018-12-03
前幾天新宸分享了PHP Script的lifecycle, 由於那天需要參加公司的培訓,未去參加新宸的LifeCycle的分享。上一年有段時間很是癡迷於PHP的擴充,想弄清楚apache對PHP的擴充是如何調用和執行的。鑽研了好久,有了一個大致的概念,但沒有新宸這樣做一個比較清楚的總結,感謝新宸的ppt。
Time of Update: 2018-12-03
If a method can be static, declare it static. Speed improvement is by a factor of 4.Avoid magic like __get, __set, __autoloadrequire_once() is expensiveUse full paths in includes and requires, less time spent on resolving the OS