Time of Update: 2016-07-29
今天在測試php程式的時候,出現了一個錯誤提示:Cannot use a scalar value as an array,這個錯誤提示前幾天也出過,當時好像稍微調了一下就好了,也沒深究,今天卻又出現了。 不能再糊弄了,得找出原因和解決辦法,於是我就去網上搜啊找啊,找了很久都沒找到結果,不是網上搜不到這樣的問題,而是很少有人做正面的準確的回答。最後這篇文章的一段文字讓我一下子弄明白了怎麼回事。 —————————————- 需要注意的是類型的轉換:
Time of Update: 2016-07-29
php面試題題目如下: 複製代碼 代碼如下:$a = 1; $x =&$a; $b=$a++; ?> 問: $b和$x的值分別是什嗎? php面試題的答案如下: $b = 1; $x = 2; 明白了嗎? 沒明白,再好好想想。 當一個變數等於另一個變數的引用的時候,這時任何一方改變了其值,另一方看到的這個值也會變化的。前加本次就表現出來,而後加下一次才會表現出來。
Time of Update: 2016-07-29
複製代碼 代碼如下:function ImageResize($srcFile,$toW,$toH,$toFile="") { if($toFile==""){ $toFile = $srcFile; } $info = ""; $data = GetImageSize($srcFile,$info); switch ($data[2]) { case 1: if(!function_exists("imagecreatefromgif")){ echo
Time of Update: 2016-07-29
最近在做一個主題投票網站,客戶懂一些程式方面的東西。有特別要求需要過濾一些字元防止sql注入。本來這方面就沒有特別的研究過。呵呵,又發揚了一回拿來主義。把discuz論壇的sql防注入函數取了來! 複製代碼 代碼如下:$magic_quotes_gpc = get_magic_quotes_gpc(); @extract(daddslashes($_COOKIE)); @extract(daddslashes($_POST)); @extract(daddslashes($_GET)); if(
Time of Update: 2016-07-29
php面試題的題目: $a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php'; //計算出 $b 相對於 $a 的相對路徑應該是 ../../c/d php面試題的答案: 複製代碼 代碼如下:function getRelative($a,$b) { $arr = explode("/",$a); $brr = explode("/",$b); $c = count($arr)-2; $d = count($brr)-2;
Time of Update: 2016-07-29
如果您想要去掉字串開始和結束的空白可以使用PHP內建函式trim() 。但是, 我們經常想完全清除空白。需要把開始和結束的空白清除掉,將多個空白變為一個空白,使用一個規則來處理同樣的類型的其它空白。 完成這些可以使用PHP的Regex來完成 下例可以去除額外Whitespace 複製代碼 代碼如下:$str = " This line contains\tliberal \r\n use of whitespace.\n\n"; // First remove the
Time of Update: 2016-07-29
GB2312編碼: 複製代碼 代碼如下:function unescape($str) { $str = rawurldecode($str); preg_match_all("/%u.{4}|.{4};|d+;|.+/U",$str,$r); $ar = $r[0]; foreach($ar as $k=>$v) { if(substr($v,0,2) == "%u") $ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,-4)));
Time of Update: 2016-07-29
/** * @author xiaoxiao 2011-1-12 * @link http://xiaoyaoxia.cnblogs.com/ * @license * 統計目錄下的檔案行數及總檔案數··去除注釋 */ $obj = new CaculateFiles(); //如果設定為false,這不會顯示每個檔案的資訊,否則顯示 $obj->setShowFlag(false); //會跳過所有All開頭的檔案 $obj->setFileSkip(array('All')); $obj-
Time of Update: 2016-07-29
是對這個系列函數的思維導圖——我也是第一次使用思維導圖這種工具。大圖在這裡。其中stream_socket_*系列是PHP 5新加入的處理socket串連的函數,簡單方便,下一篇部落格我將使用這些函數實現socket通訊。具體的函數參數及應用可以查看手冊。 以上就介紹了substrate safe mode PHP
Time of Update: 2016-07-29
複製代碼 代碼如下:$url = "http://sinaurl.cn/hbdsU5"; echo unshorten($url); function unshorten($url) { $url = trim($url); $headers = get_headers($url); $location = $url; $short = false; foreach($headers as $head) { if($head=="HTTP/1.1 302 Found") $short =
Time of Update: 2016-07-29
//編譯安裝php 5.3.3 由於php5.3.X已經內建了php-fpm所以不需要打補丁 # sudo ./configure --prefix=/usr/local/php-5.3.3 --with-mcrypt --with-gettext --with-mysql --with-gd --with-jpeg-dir --with-png-dir --with-curl --with-freetype-dir --enable-gd-native-ttf
Time of Update: 2016-07-29
1.下載以下兩個檔案,放入php ext目錄及system32 php_sqlsrv_52_ts_vc6.dll (安全執行緒) php_sqlsrv_52_nts_vc6.dll (非安全執行緒) vc6用於Apache,vc9用於IIS 2.修改php.ini extension=php_sqlsrv_52_ts_vc6.dll 3.下載sqlncli.msi,微軟官方可以下 安裝的時候提示是sql server 2008的,不過2005也是可以用的。 4.測試代碼 複製代碼
Time of Update: 2016-07-29
複製代碼 代碼如下:function my_image_resize($src_file, $dst_file, $dst_width=32, $dst_height=32) { if($dst_width echo "params width or height error !"; exit(); } if(!file_exists($src_file)) { echo $src_file . " is not exists !"; exit(); }
Time of Update: 2016-07-29
複製代碼 代碼如下:function ImageResize($srcFile,$toW,$toH,$toFile="") { if($toFile==""){ $toFile = $srcFile; } $info = ""; $data = GetImageSize($srcFile,$info); switch ($data[2]) { case 1: if(!function_exists("imagecreatefromgif")){ echo
Time of Update: 2016-07-29
xml.class.php檔案代碼複製代碼 代碼如下:* example 讀取資料: * * $xml = new xml("dbase.xml",'table'); * * $data=$xml->xml_fetch_array(); * * echo ""; * * print_r($data); * class xml { var $dbase; //資料庫,要讀取的XML檔案 var $dbname; //資料庫名稱,頂層元素,與資料庫檔案名稱一致 var $dbtable;
Time of Update: 2016-07-29
我們草根站長購買的虛擬機器主機往往都有檔案數量限制,大量小檔案佔用大量資源,落伍精華區也有兄弟推薦豆瓣的解決方案,但是要有主機許可權。只能另裝思路,採用php+SQLite解決問題,經過我測試,切實可行,現在推薦給大家。 現在公開代碼: 建立資料庫檔案:php1.php 複製代碼 代碼如下:$db = new SQLite3('mysqlitedb.db'); //擷取檔案2進位流 $filename = "http://www.jb51.net/logo.gif"; $handle =
Time of Update: 2016-07-29
php面試題說明 : 例如:my name is fanglor =》 ym eman si orlgnaf php面試題的答案: 複製代碼 代碼如下:function restr ($str) { $str1 = explode (' ',$str); $str2 = ''; $temp = ''; for ($i=0;$i{ $str2 .= $temp.strrev ($str1[$i]); $temp = ' '; } return $str2; } 測試代碼: 複製代碼
Time of Update: 2016-07-29
複製代碼 代碼如下:/*—————————————————— */ //– 遞迴刪除檔案及目錄 //– 例: del_dir (‘../cache/');注意:返回的/是必須的 //– $type 強制移除目錄, true 是 ,false 否 /*—————————————————— */ function del_dir ($dir,$type=true) { $n=0; if (is_dir($dir)) { if ($dh = opendir($dir)) { while
Time of Update: 2016-07-29
函數的原理很簡單,主要就是用了一下遞迴調用。 複製代碼 代碼如下:function file_list($path){ if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { if (is_dir($path."/".$file)) { echo $path.":
Time of Update: 2016-07-29
目錄下必須有default.gif(此圖為模板縮圖)的才為合法的模板 複製代碼 代碼如下:function get_template () { $template = array (); $dir = CMS_ROOT.'/tpl/'; $n = 0; if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if ($file =='.' or $file == '..'