Time of Update: 2017-02-27
使用C建立php擴充優點:1.提高運行效率。2.降低php複雜度,可以直接調用擴充方法實現功能。3.方便與第三方庫互動。缺點:1.開發比php複雜。2.可維護性降低。3.開發週期變長。php開發,發現問題後,只要修複問題,即可見到效果。如果使用擴充,修複後需要重新編譯,重啟服務,才能見到效果。首先,假定需要實現一個方法:將url字串轉換成超連結。php實現方法:<?php function strtolink($url, $name='', $openwin=0){
Time of Update: 2017-02-27
IECapt可以將捕獲網頁,產生BMP、JPEG 或 PNG格式的圖片,包含C++和C#兩種版本,不足是依賴於Internet Explorer,這就決定了它只能在Windows下使用。IECapt是一個命令列工具,通過指定的url,利用ie核心,即可將其圖片截取下來。操作:第一步:下載地址IECapt :http://download.csdn.net/detail/u011986449/6877893第二步:如下代碼:<?php
Time of Update: 2017-02-27
PHP中exit和die有什麼區別?兩個有區別,die是退出並釋放記憶體,exit是退出但不釋放記憶體。這個解釋顯然是錯的,我們以前都看過手冊中說,兩者只是別名關係,除此之外完全一樣。不過我還是很好奇,決定從源碼中找找線索,看看php是如何處理的這個“別名”。首先要清楚一點,die和exit都是語言結構而非函數。很多初學者總搞不清語言結構和函數的區別,用通俗點的話講,語言結構可以理解為文法本身的一種標識。像+、-、*、/這些也都是語言結構,if、else、for、whil
Time of Update: 2017-02-27
例如:A.php<?php$usernane?>要將A.php中的$usernane值傳給另外一個頁面(B.php)中的實現方法:<meta http-equiv='refresh' content='0;url='B.php?user=$username'> 接收 echo $_GET['user'];這樣,就可以在B.php中訪問$username的值B.php<?phpecho
Time of Update: 2017-02-27
你是否在程式開發的過程中遇到以下的情況:當你花了很長的時間開發一個應用後,你認為應該是大功告成了,可惜在調試的時候,老是不斷的發現bug,而且最可怕的是,這些bug是重複出現的,你可能發現這些bug之間會有關聯,但卻老是找不到問題的所在。當你遇到以上這些令你沮喪的情況時,你一定會想能有什麼更好的辦法去解決呢?辦法當然是有的!這就是使用單元測試。單元測試不但可以在一定程度上解決上述頭疼的問題,而且能讓代碼變的容易維護,還可以能讓你更多地對代碼進行重構。一旦你編寫好單元測試用例,當你需要修改你的代碼
Time of Update: 2017-02-27
在PHP編程中,如果你使用文本型資料庫,也許會為它的分類排序問題感到頭痛。下面小陽介紹一下如何運用PHP結合JavaScript指令碼實現這個功能:如下圖,當使用者點擊相應的標題類別時,如果該類別與原類別不同,則按相應類別相同的升降序排列;當點擊類別與原類別相同,則按該類別與原來相反的順序排列。(即假如圖中把滑鼠放至“歌手”標題,將提示“按[歌手][升序]排列”。)例子中文本資料庫的格式為:每行的資訊都各儲存在一個檔案下,檔案內容格式為&ldquo
Time of Update: 2017-02-27
之前看到過好多關於PHP匯出Excel的文章,自己也通過不少方法實現過,例如,echo一個Table,然後將header修改為Excel即可。其實在眾多方法中感覺Pear中的Spreadsheet_Excel_Writer很是好用。關於Spreadsheet_Excel_Writer的安裝本文不予介紹,可通過Google找到答案:) 也可參考:
Time of Update: 2017-02-27
PHP在很多時候不適合做常駐的SHELl進程, 他沒有專門的gc常式, 也沒有有效記憶體管理途徑.所以如果用PHP做常駐SHELL, 你會經常被記憶體耗盡導致abort而unhappy.而且, 如果輸入資料非法, 而指令碼沒有檢測, 導致abort, 也會讓你很不開心.那? 怎麼辦呢?呵呵, 別著急, 多進程來幫您!那,這是為什麼呢?優點:1.使用多進程, 子進程結束以後,
Time of Update: 2017-02-27
剛剛在PHP群內和大家聊天,應承了大家要寫一個關於如何?PHP源碼加密的文章,藉著這會QA在冒煙的機會,就這個問題,我寫點思路。我以前的文章介紹過,ZE(Zend engine)執行一個PHP指令碼會經曆編譯->執行,只不過它每次執行都會去重新編譯PHP檔案。並沒有實現編譯和執行分離。在ZE的編譯和執行階段,有倆個重要的函數:ZEND_API zend_op_array *(*zend_compile_file)(zend_file_handle *file_handle, int
Time of Update: 2017-02-27
/*** @說明: 檔案快取輸出* @參數: $cachefile => cache檔案(絕對路徑)* @參數: $pertime => 緩衝輸出的間隔時間* @參數: $sql => sql語句* @參數: $templatefile => 模板檔案名稱(絕對路徑)**/function __cache($cachefile,$pertime,$sql,$templatefile) {global $db;if(time() -
Time of Update: 2017-02-27
有這麼一段HTML,比較不規則的,如果要提取其中的連結地址和連結名稱,怎麼弄?//HTML$str = '<a id="top8" href="http://list.MP3.baidu.com/song/A.htm?top8" class="p14" target="_top">歌曲列表</a><br><a target="_blank"
Time of Update: 2017-02-27
在本系列文章(有關如何在實際情況下開發有效PHP代碼)的第3部分中,Amol Hatwar討論了如何構建最有效功能型函數,使用這些函數不會犧牲太多效能或可管理性。作者重點闡述了如何編寫可重用函數,並介紹了如何避免與該任務相關的一些最常見問題。歡迎回來。在本系列文章的第1部分中,我討論了一些基本的PHP設計規則,並介紹了如何編寫安全、簡單、與平台無關且快速的代碼。在第2部分中,我介紹了變數,並討論了它們在PHP編碼中的用法 —
Time of Update: 2017-02-27
“用PHP開發健壯的代碼”是關於解決大中型應用程式中的實際問題的系列文章。在本文中,PHP老手Amol Hatwar討論了如何有效地使用變數。他還示範了如何通過使用PHP中可變的變數名來構造設定檔解析器,以便簡化指令碼配置。在我的
Time of Update: 2017-02-27
今天因為臨時需要,要動態在圖片上添加透明度漸層的效果,在網上找了半天沒有相應功能的演算法....自己寫了一個:以下為引用的內容: <?////$strimgsrc = file_get_contents("");////$imgsrc = imagecreatefromstring($strimgsrc);$imgsrc = imagecreatefromjpeg("5307754.jpg");$imgsrcw = imagesx($imgsrc)
Time of Update: 2017-02-27
//mysql資料庫的sqlCREATE TABLE user( id int(5) DEFAULT '0' NOT NULL AUTO_INCREMENT, name varchar(20), city varchar(20), postcode varchar(10),address varchar(100), password varchar(10), level tinyint(2) DEFAULT '0',right tinyint(2),email varchar(40),
Time of Update: 2017-02-27
會話管理,非常重要的一部分,讓參數在頁面間來回傳遞,這是個簡單的例子,邊學邊用,效果如圖:首頁面index.php代碼:<?phpsession_start();$_SESSION['name']="zhang3";echo "<a
Time of Update: 2017-02-27
addcslashes — 為字串裡面的部分字元添加反斜線逸出字元addslashes — 用指定的方式對字串裡面的字元進行轉義bin2hex — 將位元據轉換成十六進位表示chop — rtrim() 的別名函數chr — 返回一個字元的ASCII碼chunk_split — 按一定的字元長度將字串分割成小塊convert_cyr_string — 將斯拉夫語字元轉換為別的字元convert_uudecode
Time of Update: 2017-02-27
最近接手的一項工作是重構職友集http://www.jobui.com和百才招聘http://www.baicai.com,找到一個非常快速的PHP模板引擎:Blitz Templates。順便就花了1天時間翻譯了一下它的文檔,希望對大家有用!文檔路徑:http://www.igaom.cn/blitz/Blitz_Docs.html簡介:Blitz templates
Time of Update: 2017-02-27
Ping Service,部落格程式提供一種通知機制,以便在第一時間將部落格的更新資訊發布到提供Ping Service服務的網站,寫彙總的時候研究了一下先看 標準 吧這是一個標準的Ping Service,用XMLRPC來傳資料的,注釋寫的這麼詳細,代碼說明就不需要了吧,PHP5開啟XMLRPC方法client.php<?php$host = 'zxsv';$port = 80;$rpc_server = '/test/xmlrpc_server.php';$title =
Time of Update: 2017-02-27
關於socket不多說了,這個網上的資料很多,關於flash的資料也很多,這裡只說在網上找不到資料或者資料很少的哦東西php的socket資料可謂少之又少,光是在google上搜php socket,出來的結果頁就是那麼三四篇文章,點進去看看,基本都是從手冊上抄下來的,一點問題都起不了,以至於我花了兩天時間才使php和flash成功通訊,呵呵其實,php和flash的socket通訊不是問題的痛點,痛點在於flash的安全性原則,特別是socket,特別是在flash player