本文執行個體講述了php使用Cookie控制訪問授權的方法。分享給大家供大家參考。具體如下:複製代碼 代碼如下:<?php if(isset($_POST['name'])||isset($_POST['pass'])){ //如果有表單有提交
本文執行個體講述了php使用Cookie實現和使用者會話的方法。分享給大家供大家參考。具體分析如下:PHP 包含了很多的函數,可以用來管理和記錄使用者資訊,包括簡單的 cookie 和全方位的使用者會話。會話使用 PHP 語言內建的技術,使得儲存狀態就像是引用超全域變數那樣簡單。1.Cookie 簡介我們可以和 PHP 指令碼一起使用 cookie 來儲存一些關於使用者的較小的資訊。 Cookie
現在正坐在安靜的寢室裡,寒假儼然已經離我而去了……今天發的是我寒假裡搞的最後一次學習,之後的時間就一直在看海賊王了。以前寫過一個C語言的遍曆目錄+複製檔案的程式,很長很複雜,現在用PHP一樣可以實現遍曆目錄,而代碼就短了不少。這個程式目的是遍曆目錄,找到所有指定檔案名稱的檔案,並刪除其中指定的字串。複製代碼 代碼如下:<?php //功能:刪除指定目錄(包括子目錄)下所有指定檔案中指定字串 $tmpfiledir =
隨著行動裝置的普及,網站也會迎來越來越多行動裝置的訪問。用適應PC的頁面,很多時候對手機使用者不友好,那麼有些時候,我們需要判斷使用者是否用手機訪問,如果是手機的話,就跳轉到指定的手機友好頁面。這裡就介紹一下,如何判斷使用者是否用手機訪問。自訂的函數如下:複製代碼 代碼如下:$agent = check_wap();if( $agent ){ header('Location: http://www.nowamagic.net'); exit;}// check if
imagick的:: adaptiveBlurImage - 增加了自適應模糊濾鏡映像 imagick的:: adaptiveResizeImage - 自適應調整映像資料依賴三角 imagick的:: adaptiveSharpenImage - 自適應銳利化映像 imagick的:: adaptiveThresholdImage - 選擇一個閾值,根據每個像素上的強度範圍 imagick的:: addImage -
pdf產生png首頁縮圖 (伺服器需要支援Imagick) 複製代碼 代碼如下: /** * PDF2PNG * @param $pdf 待處理的PDF檔案 * @param $path 待儲存的圖片路徑 * @param $page 待匯出的頁面 -1為全部 0為第一頁 1為第二頁 * @return 儲存好的圖片路徑和檔案名稱 */
複製代碼 代碼如下:$array=array(1,2,3,4,5); echo $array[count($array)-1];//計算數組長度,然後擷取數組最後一個元素,如果數組中最後一個元素含有非數字鍵名,結果可能跟預期不符合 //適用於鍵名為數位數組 echo '<br>'; echo
iconv是轉換編碼的,但是在中文轉碼時候出現顯示不全問題。 複製代碼 代碼如下: iconv("UTF-8","GB2312//IGNORE",$data); 加上//IGNORE,忽略錯誤 或者用mb_convert_encoding()複製代碼 代碼如下: <?php /* 轉換內部編碼為 SJIS */ $str =
php計算數組相同值出現次數,可以使用php內建函數array_count_values:說明array array_count_values ( array $input )array_count_values() 返回一個數組,該數組用 input 數組中的值作為鍵名,該值在 input 數組中出現的次數作為值。array_count_values() 例子複製代碼 代碼如下:<?php$array = array(1, "hello", 1, "world", "hello"
本文執行個體講述了php實現excel中rank函數功能的方法。分享給大家供大家參考。具體分析如下:sql語句實現排名是像這樣的如:總分成績為 195,180,180,161,名次分別為1,2,3,4,遇到並列的情況也是按照順序的,而Excel函數rank排名得到的結果是1,2,2,4,遇到並列跳過中間的3下面的函數類比的就是這種情況函數如下(不知道有沒有更好的實現方法):公式為:
本文執行個體講述了PHP中error_log()函數的使用方法。分享給大家供大家參考。具體分析如下:今天遇到一個問題需要調試,但是只能通過日誌列印調試,就用到了error_log這個函數需要列印的是一台伺服器發送到我們伺服器的post資料代碼如下:(key和value都列印了)複製代碼 代碼如下:if(!empty($_POST) ){ while (list($key, $val) = each($_POST)) { @error_log("$key =>
很多時候,在書寫網頁應用程式時候,會遇到中文和其他字元衝突的問題,例如有的url連結中包含中文字元,那麼在使用wget/curl/file_get_contents等等擷取資訊時候會直接撞上一個大大的“404”,會很無語。這裡寫了一個小函數來解決這個問題,只是限於在path中進行解析而已,涉及到的相關函數使用大家可以查看手冊就行。複製代碼 代碼如下:function urlConvert($url){
最近老闆叫做一個資料查重的小練習,涉及從一個包含中文欄位的檔案中提取出其中的中文欄位並儲存,使用php開發。中間涉及到phpRegex中文匹配的問題,網上搜羅一大片,但是也很亂沒有一個準信兒,經過自己的代碼的修改和檢驗,先將extract函數寫下。首先要注意到的是,雙位元組字元的編碼問題,這裡我們以後還可能會遇到像韓文、日文等編碼問題,與中文理解上是一個意思。1. GBK (GB2312/GB18030)複製代碼 代碼如下:\x00-\xff GBK雙位元組編碼範圍
觀察者模式是設計模式中比較常見的一個模式,包含兩個或者更多的互相互動的類。這一模式允許某個類觀察另外一個類的狀態,當被觀察類的狀態發生變化時候,觀察者會進行得到通知進而更新相應狀態。php的SPL標準類庫提供了SplSubject和SplObserver介面來實現,被觀察的類叫subject,負責觀察的類叫observer。這一模式是SplSubject類維護了一個特定狀態,當這個狀態發生變化時候,它就會調用notify方法。調用notify方法時,所有之前使用attach方法註冊的SplObs
有時候在php本身沒有滿足需求的api時候,需要自己寫相應的擴充,擴充寫完之後進行編譯,即可加入自己的開發環境中,擴充php的功能。這裡實現一個連接字串和int型數的串連操作的簡單擴充。首先,下載最新的php源碼安裝包,進入ext/目錄,建立extstrcat.def:複製代碼 代碼如下:string extstrcat(string strarg, int intarg) 隨後運行:複製代碼 代碼如下:./ext_skel --extname=extstrcat
本文執行個體講述了PHP函數extension_loaded()用法。分享給大家供大家參考。具體分析如下:extension_loaded — 檢查一個擴充是否已經載入例如:複製代碼 代碼如下:<?phpif (!extension_loaded('gd')) { if (!dl('gd.so')) { exit; }}?
本文執行個體講述了php使用CURL偽造IP和來源的方法。分享給大家供大家參考。具體分析如下:偽造IP來源對於php來說是很簡單的一件事情,我們只要利用了php的curl即可實現偽造IP來源的功能,IP地址你可以隨便寫.index.php執行個體代碼如下:複製代碼 代碼如下:$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://localhost/curl.php"); curl_setopt($ch,
本文執行個體講述了php截取html字串及自動補全html標籤的方法。分享給大家供大家參考。具體分析如下:這裡總結一下關於利用php截取html字串自動補全html標籤,實際開發中會經常碰到,很多人直接先strip_tags過濾掉html標籤,但是就只剩下純文字了,可讀性非常差,下面是一個函數,代碼如下:複製代碼 代碼如下:/** * 截取HTML,並自動補全閉合 * @param $html * @param $length * @param $
本文執行個體分析了php中靜態類與靜態變數用法的區別。分享給大家供大家參考。具體分析如下:static是定義一個靜態對象或靜態變數,關於static 定義的變數或類方法有什麼特性我們看完本文章的相關執行個體後就見分曉了.1. 建立對象$object = new Class(),然後使用”->”調用:$object->attribute/function,前提是該變數/方法可訪問.2. 直接調用類方法/變數:class::attribute/function,無論是靜態/非靜態都可以,
本文執行個體講述了將FCKeditor匯入PHP+SMARTY的實現方法。分享給大家供大家參考。具體分析如下:提取Fckeditor時,採用如下,PHP用$_POST['p_info']得到FCKeditor的值.補充:1 .此處basepath 的路徑一定要和上面include的路徑一樣.否則會找不到檔案另外,對於這個輸入內容的變數,如果要把它存入資料庫教程,它的變數名為你建立對象的名字.例如上面就是 "p_info".2.