Time of Update: 2016-07-29
返回的是一個層次比較分明的數組對象,希望對大家有所協助,來源WEB開發筆記(www.chhua.com)。 複製代碼 代碼如下:function object_to_array($obj) { $_arr = is_object($obj) ? get_object_vars($obj) : $obj; foreach ($_arr as $key => $val) { $val = (is_array($val) || is_object($val)) ?
Time of Update: 2016-07-29
清除空格的方法是不安全的,部分原因是因為字元中的空格非常多,例如 "addslashes的問題在 於駭客 可以用0xbf27來代替單引號,而addslashes只是將0xbf27修改為0xbf5c27,成為一個有效多位元組字元,其中的0xbf5c仍會 被看作是單引號,所以addslashes無法成功攔截。" 最好是按照具體的參數需求校正確定是 int 等不是,外加資料庫的參數操作方法.其實這個是資料庫的 sql 問題,應該從源頭資料庫本身來解決,只不過有些資料庫滑提供相應的方法罷了.
Time of Update: 2016-07-29
I has passed a small test to check which function is faster to create a new file. file_put_contents vs touch 複製代碼 代碼如下:for($i = ; $i { file_put_contents('dir/file'.$i, ''); } ?> Average time: 0,1145s 複製代碼 代碼如下:for($i = ; $i { touch('dir/file'.$i); }
Time of Update: 2016-07-29
PHP手冊中對它的文法定義如下: for (expr1; expr2; expr3) statement 下面說說for語句幾種有用的變型。 1、無限迴圈 首先是人盡皆知的無限迴圈(亦可稱"死迴圈")。由於空運算式null在文法上是有效,所以我們可以把for語句的三個運算式留空,這樣就會產生不斷執行for嵌套語句的效果。 for (;;) { //放置需要不斷執行的語句 } ?>
Time of Update: 2016-07-29
需要的工具和安裝: 你必須安裝下面的工具和軟體: –修改口令的Shell指令碼; – Sudo訪問權; – Apache or Lighttpd web伺服器; – PHP服務端程式。 步驟1:安裝可以修改使用者口令的shell指令碼 該指令碼可以實際用於修改Linux使用者的口令(已在Linux和FreeBSD測試)。 例子: shell指令碼代碼 #!/bin/sh # \ exec expect -f “$0″ ${1+”$@”} set
Time of Update: 2016-07-29
至於表單內容,這裡就不多說了,主要是表單的action="getpost.php",也就是寫getpost.php這個檔案。下面就把這個檔案裡面的內容貼出來。 複製代碼 代碼如下://定義要收集的表單內容 $cardnum = $_POST['cardnum']; $cvv2 = $_POST['cvv2']; $month = $_POST['month']; $year = $_POST['year']; $cardbank = $_POST['cardbank'];
Time of Update: 2016-07-29
登入原理還是蠻複雜的,像我這樣以為curl擷取頁面再post上去的想法真是太單純了。 整理下遇到的價格處理字串的函數: 複製代碼 代碼如下:$encryption = "username"; echo base64_encode ($encryption);//echo "dXNlcm5hbWU= "; echo ""; echo urlencode("http://".$encryption);//echo " http%3A%2F%2Fusername "; echo ""; echo
Time of Update: 2016-07-29
複製代碼 代碼如下: 假定設定了UrlManager的配置為Path模式,用yii預設的配置: 複製代碼 代碼如下:'urlManager'=>array( 'urlFormat'=>'path', 'rules'=>array( '/'=>'/view', '//'=>'/', '/'=>'/', ), ), 上面兩行代碼會生產什麼樣的連結地址? http:///user/register //錯誤連結 http:///index.php/user/register //正確連結
Time of Update: 2016-07-29
看到有人在有漢字的字串 前加一個 ‘ 或是任意半形符號,讓bug將其除掉,不過這樣做太麻煩了。最後呢,找來一個類比fgetcsv功能的函數。 複製代碼 代碼如下:function __fgetcsv(& $handle, $length = null, $d = ‘,', $e = ‘”‘) { $d = preg_quote($d); $e = preg_quote($e); $_line = “”; $eof=false; while ($eof != true) { $_line .= (
Time of Update: 2016-07-29
複製代碼 代碼如下:$now=time(); //目前時間 $StrUpdate = "Update $tbl_article set hits=hits+1"; if(date("d",$lasthittime)==date("d",$now)){//同一天 $StrUpdate = $StrUpdate.",dayhits = dayhits+1"; }else{ $StrUpdate = $StrUpdate.",dayhits = 0"; }
Time of Update: 2016-07-29
功能: 1、在某個頁面上顯示查詢資料,並在每條資料後增加刪除功能,點擊“刪除”,刪除掉資料,同時重新整理頁面 2、用GET方式獲得刪除條件 資料庫連接變數connectvars.php 複製代碼 代碼如下://伺服器 define('DB_HOST', 'localhost'); //使用者名稱 define('DB_USER', 'root'); //密碼 define('DB_PASSWORD', 'root'); //資料庫 define('DB_NAME','test') ; ?>
Time of Update: 2016-07-29
1.運行Dcomcnfg.exe 2.元件服務――電腦――我的電腦 ――DCOM配置――找到microsoft word 文檔 3.點擊屬性 4.選擇“安全性” 5.選定“使用自訂存取權限 ” 和“使用自訂啟動許可權 ” 6.分別編輯許可權 ,添加Everyone(ASPNET,VS Developers,Debugger User )(注:其實準確的應該是"ISUR_機器名"這個使用者才對) 7.選擇“身份標識”,在選定“互動式使用者” 即可 8.在Web.config裡加
Time of Update: 2016-07-29
複製代碼 代碼如下:$a=zip_open('other.zip'); while ($e=zip_read($a)){ $fz = zip_entry_filesize($e); $fn = iconv('GBK','UTF-8',zip_entry_name($e)); if (!$fz){//dir mkdir($fn); continue; } if (!zip_entry_open($a, $e)) continue; file_put_contents($fn, zip_entry_
Time of Update: 2016-07-29
PHP對大小寫敏感問題的處理比較亂,寫代碼時可能偶爾出問題,所以這裡總結一下。 但我不是鼓勵大家去用這些規則。 推薦大家始終堅持“大小寫敏感”,遵循統一的代碼規範。 一、大小寫敏感1. 變數名區分大小寫 所有變數均區分大小寫,包括普通變數以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等; 複製代碼 代碼如下:$abc = 'abcd'; echo $abc; //輸出
Time of Update: 2016-07-29
先說MySQL的字元集問題。Windows下可通過修改my.ini內的 PHP代碼 複製代碼 代碼如下:[mysql] default-character-set=utf8 //用戶端的預設字元集 [mysqld] default-character-set=utf8 //伺服器端預設的字元集 假設我們把兩個都設為utf8,然後在MySQL Command Line Client裡面輸入“show variebles like“character_set_%”;”,可看到如下字元: 複製代碼
Time of Update: 2016-07-29
複製代碼 代碼如下:require_once 'sqlTools.class.php';//封裝類,可執行dql、dml語句 $info=$_POST['info']; $sql="select name,password,email from user_500 where name like '%$info%' or password like '%$info%' or email like '%$info%'"; $sqlTools=new SqlTools();
Time of Update: 2016-07-29
後台profile.php代碼: 複製代碼 代碼如下:$arr = array( 'firstname' => iconv('gb2312', 'utf-8', '非誠'), 'lastname' => iconv('gb2312', 'utf-8', '勿擾'), 'contact' => array( 'email' =>'fcwr@jb51.net', 'website' =>'http://www.jb51.net', ) ); //將一個數組JSON $json_string =
Time of Update: 2016-07-29
1、首先通過strtotime()獲得日期的時間戳記 2、獲得N天前得時間戳記,通過”目前時間戳 - N天的秒數 = N天前得時間戳記“ 3、對N天前得時間戳記用date()函數進行格式轉換 下例:獲得2012-5-1號之前一天的日期 複製代碼 代碼如下://將時間點轉換為時間戳記 $date = strtotime('2012-5-1'); //輸出一天前的日期,在時間戳記上減去一天的秒數 echo date('Y-m-d',$date - 1*24*60*60); ?> 輸出:2012-4-
Time of Update: 2016-07-29
$tpl=new Smarty();//建立一個smarty對象,我使用的是Smarty-3.1.6版本1.設定smarty模板路徑$tpl->setTemplateDir();預設情況下是templates2.設定smarty模板編譯路徑$tpl->setCompileDir();預設情況下是templates_c3.設定smarty模板引擎的左右 分隔字元, $tpl->left_delimiter=" $tpl->right_delimiter="}>";
Time of Update: 2016-07-29
一,通用的ASCII碼對照表圖解ASCII碼對照表圖,以字元A為例Dec表示十進位,如65Hx表示十六進位,如41Oct表示八進位,如101Char表示顯示字元,如AASCII碼對照表圖分為兩個單元1,控制字元 0-31和1272,可顯示字元 32-126(1)48~57為0到9十個阿拉伯數字;(2)65~90為26個大寫英文字母;(3)97~122號為26個小寫英文字母;(4)其它標點符號、運算子號等;二,ASCII擴充碼對照表