Time of Update: 2016-07-13
在做FTP資料採集的時候,需要用到一個PHP函數ftp_connect,這個函數是建立一個新的 FTP 串連,如果成功返回一個串連標識,失敗則返回 FALSE.ftp_connect() 開啟一個 FTP 串連,參數 host 為要已連線的服務器。host 後面不應以斜線結尾,前面也不需要用 ftp:// 開頭。選擇性參數port 為要串連到的 FTP 器的連接埠號碼,如果沒有設定或者為0,則會使用預設的連接埠 21 來串連。當我去執行我的這個程式的時候,發現報錯如下:複製代碼
Time of Update: 2016-07-13
PHP按行讀取檔案 去掉分行符號”\n”:第一種:複製代碼 代碼如下:$content=str_replace("\n","",$content);echo $content;或者:複製代碼 代碼如下:$content=str_replace(array("\n","\r"),"",$content);第二種:複製代碼 代碼如下:$content=preg_replace("/\s/","",$content);echo $content;第三種:複製代碼 代碼如下:$content=trim(
Time of Update: 2016-07-13
有時候在伺服器上面寫一些指令碼的時候,經常要放到crontab裡面定時運行。時間長了就有一個問題,那就是程式重複運行消耗太多的資源,怎麼處理呢?下面我寫了兩種方法:第一種:用linux裡面的正則匹配複製代碼 代碼如下:function ifrun($clsname,$bf = 0){ //下面進行檢測,如有一個進程正在運行,則不運行 $str=shell_exec("/bin/ps ax > /home/root/".$clsname."_run.txt");
Time of Update: 2016-07-13
作為一個php程式員們必須知道的PHP代碼最佳化的40條建議:1.如果一個方法可靜態化,就對它做靜態聲明。速率可提升至4倍。2.echo 比 print
Time of Update: 2016-07-13
項目中,用preg_match正則提取目標內容,死活有問題,代碼測得死去活來。後來懷疑PHP 的preg_match有字串長度限制,果然,發現“pcre.backtrack_limit ”的值預設只設了100000。解決辦法:ini_set('pcre.backtrack_limit', 999999999);註:這個參數在php
Time of Update: 2016-07-13
在做一個圖片預覽中圖的東西,遇到一個問題,就是要判斷遠程檔案是否存在(不是同一台伺服器)。代碼如下:複製代碼 代碼如下://方法一function file_exists($url){$ch = curl_init();curl_setopt($ch, curlopt_url,$url);curl_setopt($ch, curlopt_nobody, 1); // 不下載curl_setopt($ch, curlopt_failonerror, 1);curl_setopt($ch,
Time of Update: 2016-07-13
每個單詞的首字母轉換為大寫:ucwords()複製代碼 代碼如下:$foo = 'hello world!';$foo = ucwords($foo); // Hello World!$bar = 'HELLO WORLD!';$bar = ucwords($bar); // HELLO WORLD!$bar = ucwords(strtolower($bar)); // Hello
Time of Update: 2016-07-13
原來站內很多文章都是摘錄的外部文章,文章裡很多連結要麼是時間久了失效了,要麼就是一些測試的網址,如:http://localhost/ 之類的,連結多了的話,就形成站內很多死連結,這對SEO最佳化是很不利的。那麼就需要對網站內的內容進行過濾,將不是內部連結的連結加上 rel="nofollow"屬性。網上找到了wordpress的過濾外部連結的函數,將其改一下即可使用//外部連結增加nofllow $content 內容 $domain 當前網站網域名稱function
Time of Update: 2016-07-13
當調試開源的代碼時,希望查看某個函數的定義,那麼就需要定位其位置。在 zend studio 這樣的 IDE 中自是可以自動提示到,但當沒有安裝這樣的開發工具時,我們可以怎麼辦呢?參考如下一段代碼,或許就包含你所需的。複製代碼 代碼如下:function a() {}class b { public function f() { }}function function_dump($funcname) { try { if(is_array($funcname))
Time of Update: 2016-07-13
複製代碼 代碼如下:$regkey = 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp\PortNumber';$shell = new COM('WScript.Shell');var_dump($shell->RegRead($regkey));//www.jb51.net 指令碼之家收集?>
Time of Update: 2016-07-13
一、為什麼需要Debugger?很多PHP程式員調試使用echo、print_r()、var_dump()、printf()等,其實對 於有較豐富開發經驗的程式員來說這些也已經足夠了,他們往往可以在程式執行的過程中,通過輸出特定變數的值可以判斷程式執行是否正確,甚至效率高低也可以 看出來(當然可能還需要使用一些時間函數)。那麼我們為什麼還需要一個專門的偵錯工具來監控我們的程式運行呢?
Time of Update: 2016-07-13
在PHP中根本不需要使用var聲明的,但是當一個變數作為一個類的成員變數的時候,使用var還是沒有問題的其實,這是一個非常容易解決掉的問題。在我看來,似曾相識,呵呵,最近學JavaScript可是學會了使用var聲明變數。其實,在PHP中根本不需要使用var聲明的,但是當一個變數作為一個類的成員變數的時候,使用var還是沒有問題的。在外部使用var就報錯Parse error: syntax error, unexpected T_VAR in...,例如我的出錯資訊:Parse error:
Time of Update: 2016-07-13
首先要編輯nginx的虛擬機器主機配置,在fastcgi的location語句的前面按下面的內容添加: 1、單個目錄去掉PHP執行許可權 location ~ /attachments/.*\.(php|php5)?$ { deny all; } 將attachments目錄的PHP執行許可權去掉。 2、多個目錄去掉PHP執行許可權 location ~ /(attachments|upload)/.*\.(php|php5)?$ { deny
Time of Update: 2016-07-13
方法一:複製代碼 代碼如下://PHP stdClass Object轉array function object_array($array) { if(is_object($array)) { $array = (array)$array; } if(is_array($array)) { foreach($array as $key=>$value) { $array[$key] =
Time of Update: 2016-07-13
昨天早上突然發現測試伺服器空間滿了,用du挨個檔案夾查看,發現是php debug log佔地極大,有的log直接有1G,開啟後發現極其多的php stack trace.立刻到主伺服器查看,主伺服器日誌也400多M的日誌,幸好主伺服器空間足夠。 那麼多stack trace,可以肯定之前是沒有的,挨個查看日誌,是某一天早上一個時刻發生的。解決方案:1. 難道是之前升級php導致,到網上搜尋php stack
Time of Update: 2016-07-13
如下代碼為PHP方式去除目前的目錄及子目錄所有檔案BOM資訊的代碼,建立檔案,將其放倒根目錄下,然後瀏覽器訪問即可。複製代碼 代碼如下:if (isset($_GET['dir'])) { //設定檔案目錄 $basedir = $_GET['dir'];} else { $basedir = '.';}$auto = 1;checkdir($basedir);function checkdir($basedir){ if ($dh = opendir($basedir))
Time of Update: 2016-07-13
在網站上設定“加入收藏、設為首頁”等按鈕是一般網站都會乾的事兒,但是有的網站還有“放到案頭”這樣的功能設定。下面即產生捷徑並下載到案頭的php實現代碼,摘錄修改於網路,僅作參考php實現代碼:複製代碼 代碼如下:if(isset($_GET[title]) && trim($_GET[title]) !== "") $title = trim($_GET[tilte]);$content='[DEFAULT]BASEURL=http://www.jb51.net/?desktop[{000214
Time of Update: 2016-07-13
非同步檔案上傳是在現代的AJAX實現的Web應用裡面經常要遇到,必須解決的問題。但是標準的AJAX類(XmlHttpRequest)無法實現傳輸檔案的功能。因此,這裡討論的內容就是如何在AJAX的技術的基礎之上構建非同步檔案上傳功能。在這個功能當中需要使用到內建的框及(IFRAME)來傳輸檔案。這個功能實現的效果是頁面在上傳檔案的時候,使用者還可以使用該頁面並且填寫檔案描述。 這個例子是我們引用AJAX的經典案例進行分析的。 系統內容 ·
Time of Update: 2016-07-13
實際開發中,多多少少都會遇到數組的排序問題,除了常規的寫簡單的排序演算法,PHP 還提供了內建數組排序函數,本次重點分享一下:uasort 使用使用者自訂的比較函數對數組中的值進行排序並保持索引關聯,可排序多維陣列,本文重點講解此函數。 uasort 函數 參數類型:bool uasort ( array &$array, callable $cmp_function) 本函數對數組排序並保持索引和單元之間的關聯。
Time of Update: 2016-07-13
1.開啟已經存在的圖片函數imagecreatefromjpeg()的參數即檔案所在路徑,返回值是參數所指圖片的資源標識符。該函數時通過已有映像建立一個映像,並不是單純開啟原映像本身。如果將圖片的尾碼名.jpg強制改為.png,即便是使用函數imagecreatefrompng(),也無法開啟檔案,因為圖片本質還是jpg格式的圖片。2.擷取圖片的相關屬性$x pixels";echo "";echo "";echo "圖片cc.jpg的高為:$y pixels";?>