Time of Update: 2017-01-13
之前折騰了一個短網址程式,過程挺順利的,唯一就是在驗證網址這一步卡了殼,花費了整個過程的一大半時間,最終經過一番搜尋、折騰和測試,才算找到一個完美的解決方案。在短網址程式中,驗證網址無疑是很重要的。且不說各種安全問題,就是一些「渾水摸魚」的網址佔據大量的短網址都非常讓人頭疼。提到驗證網址,我相信大多數人第一時間反應出來的都是Regex,的確,這很科學,但何奈自己正則太渣,平時想要匹配一段複雜的 HTML
Time of Update: 2017-01-13
整理了工作中常用的一些Regex,常用的正則驗證運算式:數字相關的Regex數字:^[0-9]*$n位定長的數字:^\d{n}$m-n位之間的數字:^\d{m,n}$零和非零開頭的數字:^(0|[1-9][0-9]*)$非零開頭的最多帶兩位小數的數字:^([1-9][0-9]*)+(.[0-9]{1,2})?$帶1-2位小數的正數或負數:^(\-)?\d+(\.\d{1,2})?$正數、負數、和小數:^(\-|\+)?\d+(\.\d+)?$有兩位小數的正實數:^[0-9]+(.[0-9]{2}
Time of Update: 2017-01-13
中文編碼雙位元組字元編碼範圍:1. GBK (GB2312/GB18030)\x00-\xff →GBK雙位元組編碼範圍\x20-\x7f →ASCII 取出非漢字的字元\xa1-\xff 中文 →gb2312
Time of Update: 2017-01-13
今天深入的把Regex看了一下,總結一下php的Regex所使用的函數preg_match();preg_match_all();preg_replace();preg_filter();preg_grep();preg_split();preg_quote();基本有這麼多吧。一個個來先給大家介紹一個 線上 驗證 Regex的工具http://regexpal.isbadguy.com/開啟你就明白怎嗎用了,我們先來說preg_match() 函數用於進行Regex匹配,成功返回 1
Time of Update: 2017-01-13
這裡可以使用到2種方法,一種是用preg_match進行驗證,一種是用JS判斷。 第一、PHP方法 代碼如下複製代碼 preg_match("/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i",$email ); 使用方法: 代碼如下複製代碼 <?phpfunction
Time of Update: 2017-01-13
加密:function string_secret($string){ $key = "yadgen"; //密鎖串,不能出現重複字元,內有A-Z,a-z,0-9,/,=,+,_, $lockstream =
Time of Update: 2017-01-13
以下代碼可以擷取到指定URL頁面中的所有連結,即所有a標籤的href屬性:// 擷取連結的HTML代碼$html = file_get_contents('http://www.111cn.net');$dom = new DOMDocument();@$dom->loadHTML($html);$xpath = new DOMXPath($dom);$hrefs = $xpath->evaluate('/html/body//a');for ($i = 0; $i <
Time of Update: 2017-01-13
例子,提取字串中的數字$str = ereg_replace('[^0-9]',",$str);和$str = preg_replace( '/[^\d]/ ', ' ',$str);數字正則過濾if(preg_match("/^\d*$/",$yebihai)) echo('是數字');else
Time of Update: 2017-01-13
效能一直是 Laravel 架構為人詬病的一個點,所以調優 Laravel 程式算是一個必學的技能。 接下來分享一些開發的最佳實務,還有調優技巧,大家有別的建議也歡迎留言討論。效能一直是 Laravel 架構為人詬病的一個點,所以調優 Laravel 程式算是一個必學的技能。接下來分享一些開發的最佳實務,還有調優技巧,大家有別的建議也歡迎留言討論。這裡是簡單的列表:配置資訊緩衝 artisan config:cache路由緩衝 artisan route:cache類映射載入最佳化
Time of Update: 2017-01-13
有時候確實需要上傳一些比較大的檔案,老高的伺服器是nginx+php,二者都需要配置。nginx老高剛開始只是配置了PHP,每次傳輸大檔案總是報錯413 “Request Entity Too Large”原因是nginx限制了用戶端上傳檔案大小,修改的方法很簡單,修改client_max_body_size為需要的值即可!# 搜尋client_max_body_size,如果你的設定檔很少,就不需要搜尋,直接開啟設定檔的server段grep -nr
Time of Update: 2017-01-13
ginx php設定上傳檔案大小,有三個地方需要改。1,nginx.confclient_max_body_size預設是2M的,如果通過http上傳超過2M,會報413 Request Entity Too Large錯誤解決辦法,將client_max_body_size改大就行了。2,php.iniupload_max_filesize = 20M #檔案上傳的最大值post_max_size = 30M
Time of Update: 2017-01-13
0x00 實驗目的根據文章”PHP繞過open_basedir列目錄的研究”通過測試不同的配置驗證本文的繞過basedir的方法是否有效,從而安全配置php open_basedir的目的.文中後面幾個方法都是windwos下採用枚舉的方式列出目錄,linux下需要做暴力猜解的方式才可以,所以不做測試.測試”DirectoryIterator +
Time of Update: 2017-01-13
批量將文章和欄目設定為僅動態瀏覽的方法:(在背景“系統”sql命令列工具 )1、將所有文檔設定為“僅動態”:執行以下mysql教程語句:update dede_archives set ismake=-12、將所有欄目設定為“使用動態網頁”,也可以建立欄目時選擇“使用動態網頁”:執行以下mysql語句:update dede_arctype set
Time of Update: 2017-01-13
描述: 目標存在全域變數覆蓋漏洞。1.受影響版本DEDECMS 5.7、5.6、5.5。2.漏洞檔案/include/common.inc.php3.DEDECMS的全域變數初始化存在漏洞,可以任意覆蓋任意全域變數。危害:1.駭客可以通過此漏洞來重定義資料庫連接。2.通過此漏洞進行各種越權操作構造漏洞直接寫入webshell後門。臨時解決方案:在 /include/common.inc.php 中找到註冊變數的代碼 代碼如下複製代碼 foreach(Array('
Time of Update: 2017-01-13
選簡介一下json吧,json(網頁特效 object notation) 是一種輕量級的資料交換格式。易於人閱讀和編寫。同時也易於機器解析和產生。它基於javascript programming language, standard ecma-262 3rd edition - december 1999的一個子集。 json採用完全獨立於語言的文字格式設定,但是也使用了類似於c語言家族的習慣(包括c, c++, c#, java, javascript, perl,
Time of Update: 2017-01-13
$res=mysql教程_query("select k1,k2 from ".table('keywords')." ") ;$str="<?php rn ";while($rs=mysql_fetch_array($res)){ $str
Time of Update: 2017-01-13
html代碼 代碼如下複製代碼 <input type= "file " id= "userfile " name= "userfile "> <input type= "submit " name= "upload
Time of Update: 2017-01-13
<meta http-equiv="content-type" content="text/html; charset=gb2312"><?phpfunction tree($directory) { $mydir=dir($directory); echo "<ul> "; while($file=$mydir->read()){ if((is_dir("$directory/$file&
Time of Update: 2017-01-13
1、使用mbstring擴充庫的mb_substr截取就不會出現亂碼了。2、自己書寫截取函數,但效率不如用mbstring擴充庫來得高。3、如果僅是為了輸出截取的串,可用如下方式實現:substr($str, 0, 30).chr(0)。 * 可以避免亂碼的截取漢字 * 參數 $str 為字串,$start 為開始字元,$len 結束字元 * 返回截取後的字元 */ function msubstr($str, $start, $len)
Time of Update: 2017-01-13
這本來是session的基本用法,但在php中就不靈了。不過我們可以把session變數註冊成"跨視窗的全域變數"。但這有一個條件,就是要向需要使用該session變數的視窗發送變數名為session_name(),值為session_id()的變數,用表單或者在url後面用?帶上都可以.並且在使用session變數的頁面的一開始處調用session_start()。例子如下:login.php檔案:<html><head><meta