Time of Update: 2017-01-19
目前學習PHP很多朋友,在平時的日常程式開發工程中總會遇到各種各樣的問題,本篇經驗將為大家介紹PHP開發中10個最常見的問題,希望能夠對朋友有所協助。錯誤1:foreach迴圈後留下懸掛指標 在foreach迴圈中,如果我們需要更改迭代的元素或是為了提高效率,運用引用是一個好辦法:$arr = array(1, 2, 3, 4); foreach ($arr as &$value) { $value = $value * 2; } // $arr is now array(2, 4, 6,
Time of Update: 2017-01-19
摘要 記憶體管理對於長期啟動並執行程式,例如伺服器精靈,是相當重要的影響;因此,理解PHP是如何分配與釋放記憶體的對於建立這類程式極為重要。本文將重點探討PHP的記憶體管理問題。一、 記憶體在PHP中,填充一個字串變數相當簡單,這隻需要一個語句"<?php $str = 'hello world '; ?>"即可,並且該字串能夠被自由地修改、拷貝和移動。而在C語言中,儘管你能夠編寫例如"char *str = "hello world
Time of Update: 2017-01-19
下邊提到的幾個數組函數的排序有一些共性:1 數組被作為排序函數的參數,排序以後,數組本身就發生了改變,函數的傳回值為bool類型。2 函數名中出現單a表示association,含義為,在按值排序的過程中,保持key=>value的對應關係不變3 函數名中出現單k表示key,含義為,在按值排序的過程中按照數組key而不是數組的值排序4 函數名中出現單r的表示reverse,含義為,按照跟不加r的相反的順序排列5
Time of Update: 2017-01-19
複製代碼 代碼如下://抽象類別的定義:abstract class ku{ //定義一個抽象類別 abstract function kx(); ......}function aa extends ku{ //實現抽象類別的方法 function kx(){ echo 'sdsf'; }}//使用方法$aa=new
Time of Update: 2017-01-19
function hex2rgb($hex) {$color = str_replace('#','',$hex);$rgb = array('r' => hexdec(substr($color,0,2)),'g' => hexdec(substr($color,2,2)),'b' => hexdec(substr($color,4,2)));return $rgb;} // www.jb51.netfunction rgb2cmyk($var1,$g=0,$b=0)
Time of Update: 2017-01-19
此教程中使用的相關IP等設定,在你的環境中要做相應修改。使用之前更新apt-get,因為伺服器基本上是一個裸系統apt-get update;apt-get upgrade;1 我們使用root賬戶進行安裝,首先切換到root賬戶,輸入命令:sudo su2 安裝 MySQL 5輸入命令:apt-get install mysql-server mysql-client安裝過程中需要設定root賬戶密碼,系統會作以下提示:New password for the MySQL ”root”
Time of Update: 2017-01-19
複製代碼 代碼如下://取重新導向的地址 class RedirectUrl{ //地址 var $url; //初始化地址 function RedirectUrl($url){
Time of Update: 2017-01-19
<?php/*PHP正則提取圖片img標記中的任意屬性*/$str = '<center><img src="/uploads/images/20100516000.jpg" height="120" width="120"><br />PHP正則提取或更改圖片img標記中的任意屬性</center>';//1、取整個圖片代碼preg_match('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\
Time of Update: 2017-01-19
原理很簡單,因為gb2312/gbk是中文兩位元組,這兩個位元組是有取值範圍的,而utf-8中漢字是三位元組,同樣每個位元組也有取值範圍。而英文不 管在何種編碼情況下,都是小於128,只佔用一個位元組(全形除外)。如果是檔案形式的編碼檢查,還可以直接check utf-8的BOM資訊。話不多說,直接上函數,這個函數是用來對字串進行檢查和轉碼的。複製代碼 代碼如下:<?phpfunction safeEncoding($string,$outEncoding ='UTF-8') &
Time of Update: 2017-01-19
本文以執行個體講述了PHP檔案寫入方法,以應對多線程寫入,具體代碼如下:function file_write($file_name, $text, $mode='a', $timeout=30){ $handle = fopen($file_name, $mode); while($timeout>0){ if ( flock($handle, LOCK_EX) ) { // 排它性的鎖定 $timeout--; sleep(1); }
Time of Update: 2017-01-19
floor函數和ceil函數互相搭配起來可以使php 處理的資料更加真實可靠。一、先來看floor函數:文法:float floor ( float value )說明:返回不大於 value 的下一個整數,將 value 的小數部分捨去取整。floor() 返回的類型仍然是 float,因為 float 值的範圍通常比 integer 要大。floor() 例子 1<?php echo floor(1.6); // will output "1" echo floor(-1.
Time of Update: 2017-01-19
通常在做內容網站的時候,需要在每一篇文章中出現與該文章相關的文章列表。對於大多數人來說,使用的方法通常是:建立一個關鍵詞列表,判斷每篇文章包含有那些關鍵詞,最後根據關鍵詞找出與某篇文章最相關的文章。對於內容比較複雜的網站,確定關鍵列表詞顯然會比較麻煩。本文介紹了與以往方法不同的similar_text(php4,php5)函數來方便的達到我們的預期要求。具體的思路是:從文章列表中取出所有的文章標題,將所有的文章標題都同當前標題對比,將對比結果產生一個數組,按照相似性的大小由大到標題,利用simi
Time of Update: 2017-01-19
很多程式員在進行php開發的時候都遇到過出現空白頁的請,綜合分析來說,在php編程中出現空白頁面可能是由以下幾個原因造成的:1、邏輯錯誤邏輯錯誤是最難排除的,從表面上看,也許代碼是合法的,是正規的,可運行起來卻不是預料之中的。為什麼呢?也許是編寫者想得不夠全面,畢竟人是人,電腦是電腦,電腦不可能完全按照人的思路去運行指令碼。在這裡,我告訴大家一個比較好的調試方法,就是使用注釋符“/* */”,注釋掉一些代碼,觀察運行情況,以此來逐個排除錯誤,最終找到錯誤碼的位置。這種情況下要想完全排除邏輯錯誤,
Time of Update: 2017-01-19
PHP的htmlspecialchars、strip_tags、addslashes是網頁程式開發中常見的函數,今天就來詳細講述這些函數的用法:1.函數strip_tags:去掉 HTML 及 PHP 的標記注意:本函數可去掉字串中包含的任何 HTML 及 PHP 的標記字串。若是字串的 HTML 及 PHP 標籤原來就有錯,例如少了大於的符號,則也會傳回錯誤。而本函數和 fgetss()
Time of Update: 2017-01-19
昨天同事遇到一個奇怪的問題,就是以下代碼,無法通過JSON校正,也無法通過PHP的json_decode函數解析。複製代碼 代碼如下:[ { "title": "", "pinyin": ""
Time of Update: 2017-01-19
複製代碼 代碼如下:function Steal($url, $post_data = ""){//$header[] = "Accept: text/vnd.wap.wml,*.*"; $user_agent = "Mozilla/4.0"; $follow_loc = 1; $cookie_file ="./tmp/cook.txt"; $ch = @curl_init(); @curl_setopt($ch,
Time of Update: 2017-01-19
遠端管理外掛程式是目前廣受WordPress網站管理員歡迎的工具 + 生產力,它允許使用者同時對多個網站執行相同的操作,如更新到最新的發行版或安裝外掛程式等。但是,為了實現這些操作,用戶端外掛程式需要賦予遠端使用者很大的許可權。因此,確保管理伺服器和用戶端外掛程式之間的通訊安全且不能被攻擊者偽造就變得相當重要了。本文淺析幾款可用外掛程式,利用其弱點,攻擊者甚至可以完全危及到運行這些外掛程式的網站本身。ManageWP, InfiniteWP, and CMS
Time of Update: 2017-01-19
php匯入到excel亂碼是因為utf8編碼在xp系統不支援所有utf8編碼轉碼一下就完美解決了utf-8編碼案例Php代碼複製代碼 代碼如下:<?php header("Content-Type: application/vnd.ms-excel; charset=UTF-8"); header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0,
Time of Update: 2017-01-19
資料結構很重要,演算法+資料結構+文檔=程式使用PHP描述冒泡排序演算法,對象可以是一個數組複製代碼 代碼如下://冒泡排序(數組排序)function bubble_sort($array) {$count = count($array);if ($count <= 0)return false;for($i=0; $i<$count; $i++){for($j=$count-1; $j>$i; $j–){if ($array[$j] < $array[$j-1]){$
Time of Update: 2017-01-19
在放假之初,我抽時間看了《白帽子講web安全》,吳翰清基本上把web安全中所有能夠遇到的問題、解決思路歸納總結得很清晰,也是我這一次整體代碼安全性的基石。我希望能分如下幾個方面來分享自己的經驗把握整站的結構,避免泄露網站敏感目錄在寫代碼之初,我也是像很多老源碼一樣,在根目錄下放上index.php、register.php、login.php,使用者點擊註冊頁面,就跳轉到http://localhost/register.php。並沒有太多的結構的思想,像這樣的代碼結構,最大的問題倒不是安全性問