礼æå å¹²ç¹å¿å¥
ããhi
åå°å¨å ï¼ç»æè¿å¨æ²¡æçµå½±å»çï¼æ²¡æè¡£æå»ä¹°ï¼æ²¡æ妹å...å½æ没说
1ãæ£å表达å¼-å®ç»ç¯
---å·¥å ·ç±»å¼å---
/*
* PHP æ£å表达å¼å·¥å
·ç±»
* æè¿°ï¼è¿è¡æ£å表达å¼å¹é
ï¼æ常ç¨çæ£å表达å¼ä»¥åå
许ç¨æ·èªå®ä¹æ£å表达å¼è¿è¡å¹é
*/
class regexTool{
//å®ä¹å¸¸ç¨æ£å表达å¼ï¼å¹¶ç¨æ°ç»å¯¹çæ¹å¼åå¨
private $validate=array(
'require' => '/.+/',
'email' => '/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/',
'url' => '/^http(s?):\/\/(?:[A-za-z0-9-]+\.)+[A-za-z]{2,4}(?:[\/\?#][\/=\?%\-&~`@[\]\':+!\.#\w]*)?$/',
'currency' => '/^\d+(\.\d+)?$/',
'number' => '/^\d+$/',
'zip' => '/^\d{6}$/',
'integer' => '/^[-\+]?\d+$/',
'double' => '/^[-\+]?\d+(\.\d+)?$/',
'english' => '/^[A-Za-z]+$/',
'qq' => '/^\d{5,11}$/',
'mobile' => '/^1(3|4|5|7|8)\d{9}$/',
);
//å®ä¹å
¶ä»å±æ§
private $returnMatchResult=false; //è¿åç±»åå¤æ
private $fixMode=null; //ä¿®æ£æ¨¡å¼
private $matches=array(); //åæ¾å¹é
ç»æ
private $isMatch=false;
//æé å½æ°ï¼å®ä¾ååä¼ å
¥é»è®¤ç两个åæ°
public function __construct($returnMatchResult=false,$fixMode=null){
$this->returnMatchResult=$returnMatchResult;
$this->fixMode=$fixMode;
}
//å¤æè¿åç»æç±»åï¼ä¸ºå¹é
ç»æmatchesè¿æ¯å¹é
æåä¸å¦isMatchï¼å¹¶è°ç¨è¿åæ¹æ³
private function regex($pattern,$subject){
if(array_key_exists(strtolower($pattern), $this->validate))
$pattern=$this->validate[$pattern].$this->fixMode; //å¤æååè¿æ¥ä¸ä¿®æ£æ¨¡å¼ä½ä¸ºå¹é
çæ£å表达å¼
$this->returnMatchResult ?
preg_match_all($pattern, $subject,$this->matches):
$this->isMatch=preg_match($pattern, $subject)===1;
return $this->getRegexResult();
}
//è¿åæ¹æ³
private function getRegexResult(){
if($this->returnMatchResult){
return $this->matches;
}else{
return $this->isMatch;
}
}
//å
许ç¨æ·èªå®ä¹åæ¢è¿åç±»å
public function toggleReturnType($bool=null){
if(empty($bool)){
$this->returnMatchResult=!$this->returnMatchResult;
}else{
$this->returnMatchResult=is_bool($bool) ? $bool : (bool)$bool;
}
}
//ä¸é¢åæ¯æ°æ®éªè¯æ¹æ³
public function setFixMode($fixMode) {
$this->fixMode = $fixMode;
}
public function noEmpty($str) {
return $this->regex('require', $str);
}
public function isEmail($email) {
return $this->regex('email', $email);
}
public function isMobile($mobile) {
return $this->regex('mobile', $mobile);
}
public function check($pattern, $subject) {
return $this->regex($pattern, $subject);
}
}
å®ä¾åè¿è¡éªè¯
/*
* PHP æ£å表达å¼éªè¯æ件
*/
//å
å«ç±»å®ä¹æ件
require_once 'regexTool.class.php';
$regex=new regexTool();
$regex->setFixMode('U'); //设å®ä¿®æ£æ¨¡å¼ä¸ºææ°æ¨¡å¼U
$r=$regex->isEmail([email protected]');
show($r);
//使ç¨ä¹åå¦è¿çshowå½æ°æ¥è¿è¡éªè¯
/*
* Description:PHP æ£å表达å¼å½æ°
*
* @name:show
* @description:output debug
* @param $var:input data
* @return void
*
*/
function show($var=null){
if(empty($var)){
echo 'null';
}elseif(is_array($var)||is_object($var)){
//array,object
echo '
';';
print_r($var);
echo '
}else{
//string,int,float...
echo $var;
}
}
---éªè¯è¡¨å---
å³ä½¿ç¨æ¹æ³ä¹ä¸
htmlåæ件å¦ä¸
ç¸å¯¹åºçå¨regCheck.phpä¸æ¹
if(!$regex->noEmpty($_POST['username'])) exit('ç¨æ·å为空');
---仿ï¼å±±å¯¨çï¼smartyç®æ模æ¿å¼æ---
--å 许ç¨åºç¿åå端å端åå¼å¼å
--模æ¿å¼æå·¥ä½åçï¼è·å模æ¿æºæ件ï¼ç¼è¯æ¨¡æ¿ï¼è¾åºç»ç¨æ·ï¼ä¹å°±æ¯è系起åå端ï¼å“æ¥å£”ä¸æ ·ï¼
--模å¼åå ï¼æ»æ¨¡å¼ï¼å³$patternï¼å模å¼ï¼å³()ä¸çä¸è¥¿ï¼å³ä¸ä¸ªèªå®ä¹çååï¼ä¹æ为模å¼åå
å ·ä½åºç¨ä¸ï¼preg_match_allä¼å¹é å°ä¸¤ç§æ¨¡å¼
preg_match_allç»æ为äºç»´æ°ç»ï¼å ¶ä¸$matches[0][0]为æ»æ¨¡å¼
å ¶ä»ä¸ºå模å¼
--
2ãjQuery
---ç®ä»---
è¿é$()表示å¹é ä¸å®å符å çå ç´
---åºç¡éæ©å¨---
--#idéæ©å¨
åºæ¬ä½¿ç¨æ¹æ³æ¯$("#id")
--elementéæ©å¨
æ ¹æ®å
ç´ çå称å¯ä»¥æ¥æ¾å°è¯¥å
ç´ ï¼å¹¶è°ç¨css()ãattr()ç
æ¹æ³è®¾ç½®å¯¹æåå
ç´ çæä½ã
--.classéæ©å¨
æ ¹æ®ç±»çå称éæ©å ç´ ï¼å ¶ä»æä½ç±»ä¼¼
--*éæ©å¨
éæ©å¨ä¸çåæ°å°±ä¸ä¸ª“*”ï¼æ¢æ²¡æ“#”å·ï¼ä¹æ²¡æ“.”å·ã ç±äºè¯¥éæ©å¨çç¹æ®æ§ï¼å®å¸¸ä¸å ¶ä»å ç´ ç»å使ç¨ï¼è¡¨ç¤ºè·åå ¶ä»å ç´ ä¸çå ¨é¨åå ç´ ã
å®è·µè¯æï¼ç±äºä½¿ç¨*éæ©å¨è·åçæ¯å ¨é¨å ç´ ï¼å æ¤ï¼æäºæµè§å¨å°ä¼æ¯è¾ç¼æ ¢ï¼è¿ä¸ªéæ©å¨ä¹éè¦è°¨æ 使ç¨ã
--sele1,sele2,seleNéæ©å¨
ææ¶éè¦ç²¾ç¡®çéæ©ä»»æå¤ä¸ªæå®çå ç´ ï¼ç±»ä¼¼äºä»æå ·çä¸æéåºå¤æ ¹èªå·²å欢çç¬ï¼å°±éè¦è°ç¨sele1,sele2,seleNéæ©å¨ï¼å®çè°ç¨æ ¼å¼å¦ä¸ï¼
$(“sele1,sele2,seleN”)
å
¶ä¸åæ°sele1ãsele2å°seleN为ææéæ©å¨ï¼æ¯ä¸ªéæ©å¨ä¹é´ç¨“ï¼”å·éå¼ï¼å®ä»¬å¯ä»¥æ¯ä¹åæåçåç§ç±»åéæ©å¨ï¼å¦$(“#id”)ã$(“.class”)ã$(“selector”)
éæ©å¨çã
--ance descéæ©å¨
æ¬èå¼å§ï¼æ们å°ä»ç»å±æ¬¡æ§éæ©å¨ã
å¨å®é åºç¨å¼åä¸ï¼å¸¸å¸¸æ¯å¤ä¸ªå ç´ åµå¥å¨ä¸èµ·ï¼å½¢æå¤æçå±æ¬¡å ³ç³»ï¼éè¿å±æ¬¡éæ©å¨ï¼å¯ä»¥å¿«éå®ä½æä¸å±æ¬¡çä¸ä¸ªæå¤ä¸ªå ç´ ï¼ance descéæ©å¨å°±æ¯å ¶ä¸ä¹ä¸ï¼å®çè°ç¨æ ¼å¼å¦ä¸ï¼
$("ance desc")
å ¶ä¸ance descæ¯ä½¿ç¨ç©ºæ ¼éå¼ç两个åæ°ãanceåæ°ï¼ancestorç¥å çç®åï¼è¡¨ç¤ºç¶å ç´ ï¼descåæ°ï¼descendantå代çç®åï¼è¡¨ç¤ºå代å ç´ ï¼å³å æ¬åå ç´ ãåå ç´ ççã两个åæ°é½å¯ä»¥éè¿éæ©å¨æ¥è·åãæ¯å¦å®¶æå§æ°“div”ï¼å®¶æå 代人éï¼é½æååé带“span”çï¼å°±å¯ä»¥ç¨è¿ä¸ªance descéæ©å¨æè¿å 个人ç»å®ä½åºæ¥ã
--parent>childéæ©å¨
ä¸ä¸ä¸èä»ç»çance desc
éæ©å¨ç¸æ¯ï¼parent > child
éæ©å¨çèå´è¦å°äºï¼å®æéæ©çç®æ æ¯åéå
ç´ ï¼ç¸å½äºä¸ä¸ªå®¶åºä¸çåè¾ä»¬ï¼ä½ä¸å
æ¬åè¾ï¼å®çè°ç¨æ ¼å¼å¦ä¸ï¼
$(“parent > child”)
childåæ°è·åçå ç´ é½æ¯parentéæ©å¨çåå ç´ ï¼å®ä»¬ä¹é´éè¿“>”符å·æ¥è¡¨ç¤ºä¸ç§å±æ¬¡å ³ç³»ã
ç å家æ
--prev+nextéæ©å¨
ä¿è¯è¯´“è¿äº²ä¸å¦è¿é»”ï¼èéè¿prev + next
éæ©å¨å°±å¯ä»¥æ¥æ¾ä¸“prev”å
ç´ ç´§é»çä¸ä¸ä¸ª“next”å
ç´ ï¼æ ¼å¼å¦ä¸ï¼
$(“prev + next”)
å ¶ä¸åæ°prev为任ä½ææçéæ©å¨ï¼åæ°“next”为å¦å¤ä¸ä¸ªææéæ©å¨ï¼å®ä»¬ä¹é´ç“+”表示ä¸ç§ä¸ä¸çå±æ¬¡å ³ç³»ï¼ä¹å°±æ¯è¯´ï¼“prev”å ç´ æç´§é»çä¸ä¸ä¸ªå ç´ ç±“next”éæ©å¨è¿åç并ä¸åªè¿åå¯çä¸ä¸ªå ç´ ã
ç å家æ
注æï¼è¿éçnextæ¯è¦è¾å ¥ä¸ä¸ä¸ªè¦æ¾çåç±»å¨æ è¯ï¼ä¸æ¯ç´æ¥è¾å ¥next
--prev~siblingséæ©å¨
ä¸ä¸ä¸èä¸ä»ç»çprev + next
å±æ¬¡éæ©å¨ç¸åï¼prev ~ siblings
éæ©å¨ä¹æ¯æ¥æ¾prev å
ç´ ä¹åçç¸é»å
ç´ ï¼ä½åè
åªè·å第ä¸ä¸ªç¸é»çå
ç´ ï¼èåè
åè·åprev å
ç´ åé¢å
¨é¨ç¸é»çå
ç´ ï¼å®çè°ç¨æ ¼å¼å¦ä¸ï¼
$(“prev ~ siblings”)
å ¶ä¸åæ°prevä¸siblings两è ä¹é´éè¿“~”符å·å½¢æä¸ç§å±æ¬¡ç¸é»çå ³ç³»ï¼è¡¨æsiblingséæ©å¨è·åçå ç´ é½æ¯prevå ç´ ä¹åçåè¾å ç´ ã
ç å家æ
---è¿æ»¤æ§éæ©å¨---
--:first/:lastè¿æ»¤éæ©å¨
æ¬ç« æ们ä»ç»è¿æ»¤éæ©å¨ï¼è¯¥ç±»åçéæ©å¨æ¯æ ¹æ®æè¿æ»¤è§åè¿è¡å ç´ çå¹é ï¼ä¹¦åæ¶ä»¥“ï¼”å·å¼å¤´,é常ç¨äºæ¥æ¾éåå ç´ ä¸çæä¸ä½ç½®çå个å ç´ ã
å¨jQueryä¸ï¼å¦ææ³å¾å°ä¸ç»ç¸åæ ç¾å ç´ ä¸ç第1个å ç´ è¯¥ææ ·åå¢ï¼
å¨ä¸é¢ç示ä¾ä»£ç ä¸ä½ å¯è½æ³¨æå°æ们ä¼ä½¿ç¨
$(“li:first”)
注æï¼ä¹¦åæ¶ä»¥“ï¼”å·å¼å¤´ã
- è¡è
- é¦è
- æ©å
- 西ç
- è¹æ
--:eq(index)è¿æ»¤éæ©å¨
å¦ææ³ä»ä¸ç»æ ç¾å ç´ æ°ç»ä¸ï¼çµæ´»éæ©ä»»æçä¸ä¸ªæ ç¾å ç´ ï¼æ们å¯ä»¥ä½¿ç¨
:eq(index)
å ¶ä¸åæ°index表示索å¼å·ï¼å³ï¼ä¸ä¸ªæ´æ°ï¼ï¼å®ä»0å¼å§ï¼å¦æindexçå¼ä¸º3ï¼è¡¨ç¤ºéæ©çæ¯ç¬¬4个å ç´
- æ©å
- é¦è
- è¡è
- è¹æ
- 西ç
--:contains(text)è¿æ»¤éæ©å¨
ä¸ä¸ä¸èä»ç»ç:eq(index)éæ©å¨æç´¢å¼æ¥æ¾å
ç´ ç¸æ¯ï¼ææ¶åæ们å¯è½å¸ææç
§ææ¬å
容æ¥æ¥æ¾ä¸ä¸ªæå¤ä¸ªå
ç´ ï¼é£ä¹ä½¿ç¨:contains(text)
éæ©å¨ä¼æ´å æ¹ä¾¿ï¼ å®çåè½æ¯éæ©å
å«æå®å符串çå
¨é¨å
ç´ ï¼å®é常ä¸å
¶ä»å
ç´ ç»å使ç¨ï¼è·åå
å«“text”å符串å
容çå
¨é¨å
ç´ å¯¹è±¡ãå
¶ä¸åæ°text
表示页é¢ä¸çæåã
- 强大ç"jQuery"
- "javascript"ä¹å¾å®ç¨
- "jQuery"åç«¯å¿ å¦
- "java"æ¯ä¸ç§å¼åè¯è¨
- å端å©å¨——"jQuery"
--:has(selector)è¿æ»¤éæ©å¨
é¤äºå¨ä¸ä¸å°èä»ç»ç使ç¨å
å«çå符串å
容è¿æ»¤å
ç´ ä¹å¤ï¼è¿å¯ä»¥ä½¿ç¨å
å«çå
ç´ å称æ¥è¿æ»¤ï¼:has(selector)
è¿æ»¤éæ©å¨çåè½æ¯è·åéæ©å¨ä¸å
å«æå®å
ç´ å称çå
¨é¨å
ç´ ï¼å
¶ä¸selector
åæ°å°±æ¯å
å«çå
ç´ å称ï¼æ¯è¢«å
å«å
ç´ ã
ææ¯På ç
æä¹æ¯På ç
På çå°±æ¯æå¦
--:hiddenè¿æ»¤éæ©å¨
:hidden
è¿æ»¤éæ©å¨çåè½æ¯è·åå
¨é¨ä¸å¯è§çå
ç´ ï¼è¿äºä¸å¯è§çå
ç´ ä¸å
æ¬typeå±æ§å¼ä¸ºhiddençå
ç´ ã
æ¾ç¤ºéèå ç´ çå 容
--:visibleè¿æ»¤éæ©å¨
ä¸ä¸ä¸èç:hidden
è¿æ»¤éæ©å¨ç¸åï¼:visible
è¿æ»¤éæ©å¨è·åçæ¯å
¨é¨å¯è§çå
ç´ ï¼ä¹å°±æ¯è¯´ï¼åªè¦ä¸å°å
ç´ çdisplayå±æ§å¼è®¾ç½®ä¸º“none”ï¼é£ä¹ï¼é½å¯ä»¥éè¿è¯¥éæ©å¨è·åã
ä¿®æ¹å¯è§“æ°´æ”çèæ¯è²
- é¦è
- è¡è
- è¹æ
--
声æï¼æ¬æå 容ç±ç½åèªåè´¡ç®ï¼çæå½åä½è ææï¼æ¬ç«ä¸æ¿æ ç¸åºæ³å¾è´£ä»»ãå¦æ¨åç°ææ¶å«æè¢ä¾µæçå 容ï¼è¯·èç³»admin@php.cnæ ¸å®å¤çã
ç¸å ³æç«
ç¸å ³è§é¢
ä¸é¢æ¨è
-
ç¬å¤ä¹è´±-phpå
¨æ å¼åæç¨
å ¨æ 170W+
主讲ï¼Peter-Zhu è½»æ¾å¹½é»ãç®çæå¦ï¼é常éåPHPå¦ä¹ å ¥é¨
-
ç女å¿ç»-webå端å¼åæç¨
å ¥é¨ 80W+
主讲ï¼çç»å¸å¤ª ç±æµ å ¥æ·±ãæå¿«ç®æ´ï¼é常éåå端å¦ä¹ å ¥é¨
-
天é¾å
«é¨-å®æå¼åæç¨
å®æ 120W+
主讲ï¼è¥¿é¨å¤§å®äºº æè·¯æ¸ æ°ã严谨è§èï¼éåæä¸å®webç¼ç¨åºç¡å¦ä¹
- ææ°æç«
- çé¨æè¡
- ä¸æ详解WindowsåLinuxç¯å¢ä¸æä¹å®è£ é ç½®PHP
- 详解win10ä¸PHPçå®è£ é ç½®ï¼ä»¥php5.6为ä¾ï¼
- ãDTMãPHPåç¨å®¢æ·ç«¯v0.1 betaçæ¬åå¸å¦ï¼
- ãåè¡æ´çã28ä¸ªå ³äºPHPæ ¸å¿ææ¯çé¢è¯é¢ï¼å©å跳槽ï¼
- php Swooleå®ç°æ¯«ç§å®æ¶è®¡åä»»å¡ï¼è¯¦è§£ï¼
- ç¨PHPå°å¥³åç §ç转æå¯ç±çå¨æ¼«å¤´åï¼
- PHP æ件æä½å½æ°ï¼ä¸é¢ï¼
- PHP ARRAY æ°ç»å½æ°ï¼ä¸é¢ï¼
- 循ç¯å¤§éæ°æ®å¯¼è´å åè¶ åºï¼ä¸å¢å å åå¦ä½è§£å³è¯¥é®é¢
- VPNæ¯ä»ä¹
- æå ¨æ详ç»çPHPé¢è¯é¢(带æçæ¡)
- PHPå大主æµæ¡æ¶çä¼ç¼ºç¹æ»ç»
- PHPå¿«éæ建ä¸ä¸ªç®åçQQæºå¨äºº
- API常ç¨ç¾åéªè¯æ¹æ³(PHPå®ç°)
- PHP常ç¨æ¥ææ¶é´æä½åé
- Macçµè设置hostsçæ¹æ³ï¼å¾ææ¥éª¤ï¼
ç½åè¯è®º
ææä¸ç½çæ§åè¨ï¼è¯·éµå® æ°é»è¯Â论æÂÂå¡åÂÂè®®
æÂÂè¦Âè¯Â论