Time of Update: 2017-01-19
複製代碼 代碼如下: /********************** *@filename - path to the image *@tmpname - temporary path to thumbnail *@xmax - max width *@ymax - max height */ function resize_image($filename, $tmpname, $xmax, $ymax) { $ext = explode(".", $filename); $ext =
Time of Update: 2017-01-19
複製代碼 代碼如下: function makeClickableLinks($text) { $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', '<a href="\1">\1</a>', $text); $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)','\1<a href=
Time of Update: 2017-01-19
1.不轉意html entities 一個基本的常識:所有不可信任的輸入(特別是使用者從form中提交的資料) ,輸出之前都要轉意。 echo $_GET['usename'] ; 這個例子有可能輸出: <script>/*更改admin密碼的指令碼或設定cookie的指令碼*/</script> 這是一個明顯的安全隱患,除非你保證你的使用者都正確的輸入。 如何修複 : 我們需要將"< ",">","and" 等轉換成正確的HTML表示(< , >
Time of Update: 2017-01-19
寫入過程 複製代碼 代碼如下: // Get the path of the configuration file $fname = JPATH_CONFIGURATION.DS.'configuration.php'; // clear cache $cache = JFactory::getCache(); $cache->clean(); // Update the credentials with the new settings $config =&
Time of Update: 2017-01-19
一、介紹 UTF-8 是一種在web應用中經常使用的一種 Unicode 字元的編碼方式,使用 UTF-8 的好處在於它是一種變長的編碼方式,對於 ANSII 碼編碼長度為1個位元組,這樣的話在傳輸大量 ASCII 字元集的網頁時,可以大量節約網路頻寬。 UTF-8簽名(UTF-8 signature)也叫做BOM(Byte Order Mark),是UTF編碼方案裡用於標識編碼的標準標記。BOM,是UTF編碼方案裡用於標識編碼的標準標記,在UTF-16裡本來是FF
Time of Update: 2017-01-19
1.php中用smarty模板產生的html在瀏覽器中頂部有一空行. 2.用firedebug發現 meta和link標記在body標籤裡. 本機上wmap運行沒事, 送到遠程伺服器上是IASP的服務, 會出現上述bug. 看了下源檔案, 文本一樣的. 但儲存時提示編碼問題.估計是utf-8問題了. 在網上找了下, 是utf-8 BOM問題. 解決方案:
Time of Update: 2017-01-19
基本的工廠類 複製代碼 代碼如下: class MyObject{ //對象將從工廠返回 } class MyFactory{ public static function factory(){ return new MyObject(): } } $instance=MyFactory::factory(); 使用工廠類解析影像檔 複製代碼 代碼如下: <?php interface IImage{ function getHeight(); function getWidth();
Time of Update: 2017-01-19
反射API的外掛程式方法是基於在運行時決定程式的功能來實現的,也就是說,它允許建立可選的介面方法,並在首次使用時檢測到這部分介面方法,只有在外掛程式中存在這部分介面的情況下,它們才會被用到. 假設擁有這樣的介面 複製代碼 代碼如下: interface IPlugin{ function getMenuItems(); function getArticles(); function getSideBars(); } class Someplugin implelents IPlugin{
Time of Update: 2017-01-19
複製代碼 代碼如下: ** * 寫檔案 * @param string $file 檔案路徑 * @param string $str 寫入內容 * @param char $mode 寫入模式 */ function writeFile($file,$str,$mode='w') { $oldmask = @umask(0); $fp = @fopen($file,$mode); @flock($fp, 3); if(!$fp) { Return false; } else {
Time of Update: 2017-01-19
說明 array array_flip ( array trans ) array_flip() 返回一個反轉後的 array,例如 trans 中的鍵名變成了值,而 trans 中的值成了鍵名。 注意 trans 中的值需要能夠作為合法的鍵名,例如需要是 integer 或者 string。如果值的類型不對將發出一個警告,並且有問題的鍵/值對將不會反轉。 如果同一個值出現了多次,則最後一個鍵名將作為它的值,所有其它的都丟失了。 array_flip() 如果失敗返回
Time of Update: 2017-01-19
原作者BlueStyle 提示 改進地方有 以前的演算法是等檔案下載完才計算, 現在這個直接在在擷取檔案時候就計算大小 加了容錯語句 增加了判斷目錄,沒有目錄自動建立 把計算檔案大小的演算法換了個 以前的那個光計算檔案大小就7行代碼, 現在這個只要兩行 轉載請保留原作者著作權資訊,由於作者是政府人員,為不惹麻煩,請保留此段文字完整性 html代碼: 複製代碼 代碼如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Time of Update: 2017-01-19
ezSQL 下載地址: 下載 : ezSQL 新版本是2.05添加了很多支援,包括 CodeIgniter,MSSQL, PDO 等等 我之前也為 CodeIgniter 寫過一次,不過只支援 MySQL 看看使用樣本其實也沒什麼難度,直接看原始碼即可,主要是程式設計的思想很好。 Example 1 ---------------------------------------------------- // Select multiple records from the database
Time of Update: 2017-01-19
複製代碼 代碼如下: // $rptype = 0 表示僅替換 html標記 // $rptype = 1 表示替換 html標記同時去除連續空白字元 // $rptype = 2 表示替換 html標記同時去除所有空白字元 // $rptype = -1 表示僅替換 html危險的標記 function HtmlReplace($str,$rptype=0) { $str = stripslashes($str); if($rptype==0) { $str =
Time of Update: 2017-01-19
偽造referer執行個體代碼,主要用於一些突破防盜鏈,比如圖片,軟體等等 這裡就直接給出完整的程式吧,具體的應用可以自己修改。 我這裡給出的例子是很簡單的,其實可以從這個例子中發展出很多的應用。比如隱藏真實的URL地址……嘿嘿,具體的就自己分析去吧 這裡建立一個檔案file.php。後面的參數就是需要偽造referfer的目標地址吧。如:file.php/http://www.xxx.xxx/xxx.mp3 複製代碼 代碼如下: <?
Time of Update: 2017-01-19
1.簡單防盜鏈 複製代碼 代碼如下: $ADMIN[defaulturl] = "http://jb51.net/404.htm";//盜鏈返回的地址 $okaysites = array("http://jb51.net/","http://www.jb51.net"); //白名單 $ADMIN[url_1] = "http://jb51.net/temp/download/";//下載地點1 $ADMIN[url_2] = "";//下載地點2,以此類推 $reffer =
Time of Update: 2017-01-19
尤其像知道哪些蜘蛛對本站進行了訪問,訪問的頻度,頁面,普通的網站統計都是無法解決的。 雖然我對PHP瞭解的很少,但是憑藉.NET的開發經驗,藉助百度仍然很快的完成了,雖然簡單,大家莫笑。 複製代碼 代碼如下: // 插入SHOPEX首頁index.php代碼塊中 // 查看PHP中的變數其實挺簡單的 // 用一個函數 phpinfo() 足以查看 $fp = fopen("log.txt","a+"); fwrite($fp,date("Y-m-d H:i:s")); fwrite($fp,"\
Time of Update: 2017-01-19
所以工作的第一步就是要將資料從excel中取出來。這裡我使用到了一個開源php處理excel類:phpexcel. 該項目的詳細資料 http://phpexcel.codeplex.com/ 。 我目前使用的是phpexcel1.7.3版本, 解壓縮后里面有一個PHPExcel和PHPExcel.php檔案。 我們主要使用那個PHP檔案。見下圖檔案目錄結構
Time of Update: 2017-01-19
數字索引數組: bool usort( array &$array, callback $cmp_function ) usort函數對指定數組(參數1)按指定方式(參數2)進行排序。 當我們想對多維陣列進行排序時,多維陣列的每個元素又是一數群組類型,而兩個數組如何比較大小?這是需要使用者自訂的(是按每個數組的第一元素比較還是…)。 複製代碼 代碼如下: <?php //定義多維陣列 $a = array( array("sky", "blue"), array("apple",
Time of Update: 2017-01-19
在PHP中數組分為兩類: 數字索引數組和關聯陣列。 其中數字索引數組和C語言中的數組一樣,下標是為0,1,2… 而關聯陣列下標可能是任意類型,與其它語言中的hash,map等結構相似。 下面介紹PHP中遍曆關聯陣列的三種方法: 方法1:foreach 複製代碼 代碼如下: <?php $sports = array( 'football' => 'good', 'swimming' => 'very well', 'running' => 'not good');
Time of Update: 2017-01-19
extract()函數文法: int extract( array $var_array [, int $extract_type = EXTR_OVERWRITE [, string $prefix ]] ) 功能: extract()函數提取關聯陣列(對數字索引數組無效)每對key和value,產生以key為變數名、value為對應值的多組新變數。 複製代碼 代碼如下: <?php $size = "old size"; //注意最後size變數的值。 $a = array(