Time of Update: 2017-01-19
一、如何禁用fsockopen()下面是兩種常用的禁用fsockopen的方法。1、修改php.ini,將 disable_functions = 後加入 fsockopen 2、修改php.ini,將 allow_url_fopen = On 改為 allow_url_fopen = Off 二、如何解決fsockopen函數被禁用1、如果伺服器沒有同時禁用pfsockopen,那麼直接將fsockopen函數替換為pfsockopen。具體操作:搜尋程式中的字串 fsockopen(
Time of Update: 2017-01-19
今天遇到了一個問題就是用fwrite寫入txt檔案的時候用 rn不能換行試了很久都沒找到辦法!突然之間想到一個東東以前看書見過後來還是用這個東東給解決了!現在寫出來預防將來忘記也希望能幫到需要協助的朋友!直接看代碼:複製代碼 代碼如下:<?php$stream = fopen("robots.txt", "w+");fwrite($stream, "你換行了嗎\r\n我已經換行了!");?>
Time of Update: 2017-01-19
直接上代碼:複製代碼 代碼如下://驗證碼類class ValidateCode { private $charset = 'abcdefghkmnprstuvwxyzABCDEFGHKMNPRSTUVWXYZ23456789';//隨機因子 private $code;//驗證碼 private $codelen = 4;//驗證碼長度 private $width = 130;//寬度 private $height =
Time of Update: 2017-01-19
從5.2版本開始,PHP原生提供json_encode()和json_decode()函數,前者用於編碼,後者用於解碼。1、json_encode()該函數主要用來將數組和對象,轉換為json格式。先看一個數群組轉換的例子:$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);echo
Time of Update: 2017-01-19
從2000年10月20日發布的第一個Windows版的PHP3.0.17開始的都是安全執行緒的版本,這是由於與Linux/Unix系統是採用多進程的工作方式不同的是Windows系統是採用多線程的工作方式。如果在IIS下以CGI方式運行PHP會非常慢,這是由於CGI模式是建立在多進程的基礎之上的,而非多線程。一般我們會把PHP配置成以ISAPI的方式來運行,ISAPI是多線程的方式,這樣就快多了。但存在一個問題,很多常用的PHP擴充是以Linux/Unix的多進程思想來開發的,這些擴充在ISAP
Time of Update: 2017-01-19
先放上來別人的例子吧:call_user_func函數類似於一種特別的調用函數的方法,使用方法如下: 複製代碼 代碼如下:function a($b,$c) { echo $b; echo $c; } call_user_func('a',
Time of Update: 2017-01-19
reset (PHP 3, PHP 4, PHP 5)reset -- 將數組的內部指標指向第一個單元說明mixed reset ( array &array )reset() 將 array 的內部指標倒回到第一個單元並返回第一個數組單元的值,如果數組為空白則返回 FALSE。例 1. reset() 例子複製代碼 代碼如下:<?php $array = array('stepone', 'step two', 'step three', 'step four');
Time of Update: 2017-01-19
定義和用法number_format() 函數通過千位分組來格式化數字。文法number_format(number,decimals,decimalpoint,separator)參數描述number 必需。要格式化的數字。如果未設定其他參數,則數字會被格式化為不帶小數點且以逗號 (,) 作為分隔字元。decimals可選。規定多少個小數。如果設定了該參數,則使用點號 (.) 作為小數點來格式化數字。decimalpoint可選。規定用作小數點的字串。separator
Time of Update: 2017-01-19
統計使用者收件匣所佔空間有多少,先計算每封郵件的大小(標題+內容+附近),後總和;1、計算附近大小;2、計算標題和內容大小3、總和求出單封郵件大小案例:複製代碼 代碼如下:<?php $attach_size= 0; if($attachmentid){ //擷取附近的大小
Time of Update: 2017-01-19
實現代碼:複製代碼 代碼如下:<?phpfunction addslashes_deep($value){//史上最經典的遞迴,一行搞定return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);}//測試資料$_POST['STR'] = "'fanglor ' is \ a boy >'";$_GET['STR1'] = 'fanglor " is
Time of Update: 2017-01-19
原理:UTF8檔案,微軟為了增加一個識別資訊,有了BOM這個東西:BOM —— Byte Order Mark,預設在Windows等平台上編輯的UTF8檔案會在頭部增加3個位元組的標記資訊,我們PHP引擎在處理的時候會完整讀取整個PHP代碼文檔,
Time of Update: 2017-01-19
複製代碼 代碼如下: echo 'abc'.'def'; //用點號連接字串 echo 'abc','def'; //用逗號連接字串 那麼下面我們就舉一些例子.來認清楚他們之前的區別.複製代碼 代碼如下: echo '1+5=' . 1+5; 看看上面的.輸出的結果是6..而不是1+5=6.有些神奇吧?更神奇的是你看下面的例子.複製代碼 代碼如下: echo "1+5=" . 5+1; //輸出2結果十分奇怪.我們看到.我們把5和1換下位置.
Time of Update: 2017-01-19
php代碼實現讀取檔案頭判斷檔案類型,支援圖片、rar、exe等尾碼。案例:複製代碼 代碼如下:<?php $filename = "11.jpg";//為圖片的路徑可以用d:/upload/11.jpg等絕對路徑$file = fopen($filename, "rb");$bin = fread($file, 2); //唯讀2位元組fclose($file);$strInfo = @unpack("C2chars", $bin);$typeCode =
Time of Update: 2017-01-19
一般我們都是按照副檔名來判斷檔案類型,但是這個很不靠譜,輕易就通過修改副檔名來躲避了,一般必須要讀取檔案資訊來識別,PHP擴充中提供了類似 exif_imagetype 這樣的函數讀取圖片類的檔案類型,但是很多時候擴充不一定安裝了,有時候就需要自己來實現識別檔案類型的工作。下面代碼就展示了自己通過讀取檔案頭資訊來識別檔案的真實類型。複製代碼 代碼如下:<?php $files = array( &
Time of Update: 2017-01-19
PHP Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this
Time of Update: 2017-01-19
多層數組和對象轉化的用途很簡單,便於處理WebService中多層數組和對象的轉化簡單的(array)和(object)只能處理單層的資料,對於多層的數組和對象轉換則無能為力。通過json_decode(json_encode($object)可以將對象一次性轉換為數組,但是object中遇到非utf-8編碼的非ascii字元則會出現問題,比如gbk的中文,何況json_encode和decode的效能也值得疑慮。下面上代碼:複製代碼 代碼如下:<?php function
Time of Update: 2017-01-19
一般情況下設定PHP指令碼執行逾時的時間一、在php.ini裡面設定max_execution_time = 1800; 二、通過PHP的ini_set 函數設定ini_set("max_execution_time", "1800"); 三、通過set_time_limit 函數設定set_time_limit(1800);PHP-Fcgi下PHP的執行時間設定方法昨天,一個程式需要匯出500條資料,結果發現到150條是,Nginx報出504 Gateway
Time of Update: 2017-01-19
在工作中需要處理多語言的翻譯問題,翻譯都是寫在excel表格裡面。為了處理方便我就保留中文和英文兩列。這樣需要將這些資料從excel中取出來,然乎儲存在excel的數組中,通過使用迴圈數組將相應的資料放入到資料庫中。所以工作的第一步就是要將資料從excel中取出來。這裡我使用到了一個開源php處理excel類:phpexcel. 該項目的詳細資料 http://phpexcel.codeplex.com/ 。我目前使用的是phpexcel1.7.3版本,
Time of Update: 2017-01-19
最近在php下做關於Socket通訊的相關內容,發現網路上好多人在瞭解如何進行16進位收發,研究了下,代碼如下,歡迎拍磚。複製代碼 代碼如下:<?php $sendStr = '30 32 30 34 03 30 33'; // 16進位資料 $sendStrArray =
Time of Update: 2017-01-19
偽造跨站請求介紹偽造跨站請求比較難以防範,而且危害巨大,攻擊者可以通過這種方式惡作劇,發spam資訊,刪除資料等等。這種攻擊常見的表現形式有: 偽造連結,引誘使用者點擊,或是讓使用者在不知情的情況下訪問 偽造表單,引誘使用者提交。表單可以是隱藏的,用圖片或連結的形式偽裝。