PHP知識(shí)點(diǎn)

Php:腳本語(yǔ)言,網(wǎng)站建設(shè),服務(wù)器端運(yùn)行

PHP定義:一種服務(wù)器端的HTML腳本/編程語(yǔ)言,是一種簡(jiǎn)單的优训、面向?qū)ο蟮亩淠恪⒔忉屝偷摹⒔训拇Х恰踩穆找健⑿阅芊浅V叩摹ⅹ?dú)立于架構(gòu)的早敬、可移植的忌傻、動(dòng)態(tài)的腳本語(yǔ)言。是一種廣泛用于Open Source(開(kāi)放源代碼)的尤其適合Web開(kāi)發(fā)并可以嵌入HTML的多用途腳本語(yǔ)言搞监。它的語(yǔ)法接近C水孩,Java和Perl,而且容易學(xué)習(xí)腺逛。該語(yǔ)言讓W(xué)eb開(kāi)發(fā)人員快速的書(shū)寫(xiě)動(dòng)態(tài)生成的網(wǎng)頁(yè)荷愕。

PHP簡(jiǎn)介:Rasmus Lerdorf發(fā)展歷程(1994:1.0個(gè)人perl,1996:2.0C底層棍矛,1998:3.0zendEngine安疗,2000:4.0session+輸出緩沖等,2004:5.0zend引擎2代)够委,平臺(tái)支持(window荐类,Linux,UNIX)茁帽,數(shù)據(jù)庫(kù)支持(Sqlserver玉罐,mysql,Oracle潘拨,Access)吊输,開(kāi)發(fā)環(huán)境(Apache2,mysql铁追,php)

服務(wù)器:軟件季蚂,常見(jiàn)服務(wù)(HTTP,F(xiàn)TP琅束,MySQL扭屁,telnet等)

軟件結(jié)構(gòu):c\s,b\s涩禀,PHP地位

Web訪問(wèn):IP料滥,域名,hosts艾船,域名服務(wù)器葵腹,網(wǎng)站高每,web訪問(wèn)

原數(shù)據(jù)保存:php文件,數(shù)據(jù)庫(kù)文件

搭建web服務(wù)器:Wamp践宴,lamp觉义,Apache安裝(www.apache.org),MySQL安裝浴井,PHP安裝(無(wú)中文路徑晒骇,CMD執(zhí)行php.exe -f,VC6和VC9)磺浙,配置(Apache加載PHP模塊:LoadModule php5_module “PHP5apachedll路徑”洪囤;增加php處理:AddType application/x-httpd-php .php;加載php配置文件:windows撕氧,Apache配置文件加載PHPIniDir “PHP配置文件路徑”瘤缩;配置PHP時(shí)區(qū):date.timezone)

Php操作數(shù)據(jù)庫(kù):PHP開(kāi)啟MySQL擴(kuò)展,指定擴(kuò)展目錄(extension_dir)

Web運(yùn)行原理:靜態(tài)伦泥,動(dòng)態(tài)

虛擬主機(jī)配置:基于域名虛擬主機(jī)剥啤,包含vhost配置,編輯虛擬vhost文件(VirtualHost不脯,ServerName府怯,DocumentRoot),重啟防楷,修改hosts文件牺丙,localhost重配

PHP腳本執(zhí)行:讀入源程序,zendEngine(詞法分析复局,語(yǔ)法分析)冲簿,生成opcode,執(zhí)行opcode亿昏,解釋峦剔,與編譯的區(qū)別

PHP工作:腳本(服務(wù)端腳本,需要web服務(wù)器和瀏覽器)角钩,命令行腳本

基本語(yǔ)法:腳本語(yǔ)言(嵌入html)吝沫,PHP處理(標(biāo)記識(shí)別),標(biāo)記(彤断,默認(rèn)野舶,易迹,<%asp標(biāo)簽%>非默認(rèn)宰衙,需開(kāi)啟;不建議使用)睹欲,最末尾標(biāo)記可以忽略(建議忽略:Ajax返回供炼,節(jié)省流量)一屋,PHP語(yǔ)句(分號(hào)結(jié)束,最后一條可以不加)

變量:$符號(hào)袋哼,有效變量名(字母或者下劃線開(kāi)始冀墨,大小寫(xiě)敏感),變量增刪改查(unset斷開(kāi)連接)涛贯,命名規(guī)則(駝峰法诽嘉,下劃線)

常量:定義(define),直接使用弟翘,特點(diǎn)(不能修改虫腋,區(qū)分大小寫(xiě),不能刪除稀余,常量值只能是標(biāo)量悦冀,命名與變量同,無(wú)$)睛琳,常量判斷(defined)盒蟆,輸出(constant(‘常量名’))

PHP注釋:行注釋,塊注釋

預(yù)定義變量:$_POST师骗,$_GET历等,$_REQUEST,$_FILES辟癌,$_SESSION募闲,$_COOKIE,$GLOBALS愿待,$_SERVER浩螺,$_ENV

預(yù)定義常量:__FILE__,__LINE__仍侥,__DIR__要出,__FUNCTION__,__METHOD__农渊,PHP_OS患蹂,PHP_VERSION,PHP_INT_SIZE砸紊,PHP_INT_MAX

可變變量

傳值:值傳遞传于,引用傳遞

數(shù)據(jù)類型:PHP若類型,八大數(shù)據(jù)類型(整型醉顽,浮點(diǎn)型沼溜,布爾型,字符型游添,數(shù)組型系草,對(duì)象型通熄,資源型,空型)找都,三大類(標(biāo)量唇辨,復(fù)合,特殊)

整型:十進(jìn)制能耻,八進(jìn)制(0)赏枚,十六進(jìn)制(0x),指定進(jìn)制輸出(printf晓猛,%d嗡贺,%o,%x)鞍帝,整型取值范圍(PHP_INT_SIZE诫睬,PHP_INT_MAX),字節(jié)帕涌,位摄凡,進(jìn)制轉(zhuǎn)換(十轉(zhuǎn)其他,除取余反闰韭亲澡;其他轉(zhuǎn)十,求冪)纫版,整型溢出(浮點(diǎn)型)床绪,時(shí)間戳(格林威治時(shí)間,time其弊,date)

浮點(diǎn)型:保留小數(shù)輸出(printf(‘%.2f’)癞己,float,double

布爾型:真假梭伐,TRUE痹雅,F(xiàn)ALSE(非0),布爾值輸出使用var_dump糊识,F(xiàn)ALSE(FALSE绩社,0,0.0赂苗,’’愉耙,’0’,空數(shù)組拌滋,null值)

字符串:?jiǎn)我?hào)朴沿,雙引號(hào),區(qū)別(解析變量鸠真,轉(zhuǎn)義悯仙,{},字符串?dāng)?shù)組)吠卷,定界符(初始標(biāo)記和結(jié)束獨(dú)占一行锡垄,結(jié)束標(biāo)記頂格,解析變量祭隔,轉(zhuǎn)義货岭,實(shí)際應(yīng)用xml)

運(yùn)算符:算術(shù)運(yùn)算符(+,-疾渴,*千贯,/,%)搞坝,賦值運(yùn)算符(=搔谴,+=,-=桩撮,*=敦第,/=,%=店量,.=)芜果,比較運(yùn)算符(>,<融师,>=右钾,<=,==旱爆,===舀射,!=,!==)怀伦,錯(cuò)誤抑制符(@)后控,自操作運(yùn)算符(++,--)空镜,字符串運(yùn)算符(.)浩淘,三目運(yùn)算符(?:)吴攒,邏輯運(yùn)算符(&&and张抄,||or,M菡)署惯,位運(yùn)算符(&,|镣隶,^极谊,~诡右,<<,>>)

原碼反碼補(bǔ)碼:正數(shù)原碼反碼補(bǔ)碼一樣轻猖,負(fù)數(shù)符號(hào)位除外求反帆吻,+1得補(bǔ)碼

流程控制:順序結(jié)構(gòu),分支結(jié)構(gòu)(if咙边,ifelse猜煮,ifelse[else],switch[case,break,default])败许,循環(huán)結(jié)構(gòu)(for王带,while,dowhile市殷,foreach愕撰,continue,break)

模板語(yǔ)法:標(biāo)簽語(yǔ)法醋寝,分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)

函數(shù):主要功能(代碼重用盟戏,模塊化編程),定義(function函數(shù)名(參數(shù)列表))甥桂,調(diào)用(函數(shù)名(參數(shù)列表))柿究,定義與調(diào)用無(wú)順序關(guān)系,形參黄选,實(shí)參蝇摸,參數(shù)傳遞(值傳遞,引用傳值办陷,默認(rèn)值)貌夕,返回值(return中斷執(zhí)行,單一返回值民镜,多返回值[引用傳遞參數(shù)])啡专,作用域(全局作用域,局部作用域制圈,作用域針對(duì)變量们童,深入分析[js和PHP],超全局作用域鲸鹦,$GLOBALS和global)

作業(yè):標(biāo)簽語(yǔ)法寫(xiě)乘法表

作業(yè):打印*慧库,求素?cái)?shù)

作業(yè):發(fā)牌程序

匿名函數(shù)

偽類型:mixed,number馋嗜,callback齐板,void,

數(shù)據(jù)類型轉(zhuǎn)換:int,integer甘磨,bool橡羞,Boolean,float济舆,string卿泽,array,object吗冤,自動(dòng)轉(zhuǎn)換(值轉(zhuǎn)換)

數(shù)據(jù)類型判斷:is_bool又厉,is_float九府,is_integer椎瘟,is_object,is_array侄旬,is_string肺蔚,is_resource,is_scalar儡羔,is_null宣羊,is_numeric,gettype汰蜘,settype

引用文件:require仇冯,include,require_once族操,include_once苛坚,作用(布局,包含公共文件)色难,文件載入原理(加載非執(zhí)行泼舱,將編譯后的文件加載),require和include的區(qū)別枷莉,文件返回(配置文件)

終止腳本:return娇昙,exit,die

載入文件路徑:絕對(duì)路徑笤妙,相對(duì)路徑(./冒掌,../,/)蹲盘,文件載入的相對(duì)路徑問(wèn)題

字符串相關(guān)函數(shù):strlen宋渔,substr,strtolower辜限,strtoupper皇拣,strrev,strpos,strrpos氧急,strchr颗胡,strrchr(獲取文件后綴名),trim

時(shí)間相關(guān)函數(shù):time吩坝,date毒姨,strtotime,microtime

數(shù)學(xué)相關(guān)函數(shù):abs钉寝,floor弧呐,ceil,round嵌纲,rand俘枫,mt_rand

數(shù)組:概念,使用數(shù)組原因(變量關(guān)聯(lián))逮走,PHP數(shù)組特點(diǎn)(沒(méi)有數(shù)據(jù)類型鸠蚪,數(shù)組下標(biāo)可為字符串[不能使用for循環(huán)遍歷],數(shù)組長(zhǎng)度可變不會(huì)溢出)师溅,數(shù)組定義(array茅信,[]),數(shù)組不能直接echo墓臭,數(shù)組長(zhǎng)度(count蘸鲸,遍歷),foreach(原理:賦值+指針下移)

二維數(shù)組:定義窿锉,語(yǔ)法酌摇,二維數(shù)組遍歷,關(guān)聯(lián)二維數(shù)組榆综,遍歷

Each+list:each(語(yǔ)法)妙痹,list(語(yǔ)法,只能獲得索引數(shù)組元素鼻疮,按照索引順序賦值)怯伊,each和list組合遍歷數(shù)組,each與foreach區(qū)別(foreach原理判沟,each原理)

數(shù)組相關(guān)函數(shù):key耿芹,current,next挪哄,prev吧秕,end,reset迹炼,array_keys砸彬,array_values颠毙,數(shù)據(jù)結(jié)構(gòu)模擬(array_shift,array_unshift砂碉,array_push蛀蜜,array_pop),字符串分割(explode增蹭,implode)滴某,array_walk_recursive(回調(diào)函數(shù),按址傳遞)

數(shù)組運(yùn)算:+滋迈,array_merge

數(shù)組比較:==霎奢,===

其他函數(shù):range,array_rand饼灿,shuffle

SQL注入:原理幕侠,解決方案(addslashes,stripslashes赔退,magic_quotes_gpc5.3前橙依,get_magic_quotes_gpc)证舟,公共函數(shù)(array_walk_recursive對(duì)$_POST轉(zhuǎn)義)

數(shù)組算法:排序(冒泡硕旗,插入,選擇女责,快排)漆枚,查找(自定義查找,二分法)

表單傳值:網(wǎng)站目的(數(shù)據(jù)管理:收集抵知,整理墙基,存儲(chǔ),發(fā)布)刷喜,收集(表單實(shí)現(xiàn))残制,數(shù)據(jù)傳遞(url,form)掖疮,傳值方式(get初茶,post)

數(shù)據(jù)接收:$_GET,$_POST浊闪,$_REQUEST恼布,數(shù)據(jù)處理,$_REQUEST不值得信任(覆蓋搁宾,request_order折汞,variables_order)

點(diǎn)擊行為判斷:isset($_POST[‘submit’])/empty()

自動(dòng)配置全局變量:register_gloabals5.3

復(fù)選框使用:[],入庫(kù)(字符拼接)盖腿,顯示復(fù)選框信息(checked)爽待,批量刪除

文件上傳:概念,難點(diǎn)(瀏覽器端,服務(wù)端)鸟款,流程(表單post揖庄,enctype=’multipart/form-data’,PHP配置file_uploads欠雌,配置項(xiàng)說(shuō)明(file_uploades蹄梢,upload_max_filesize,post_max_size富俄,upload_tmp_dir))禁炒,文件上傳流程(本地選擇文件,提交霍比,文件發(fā)送到服務(wù)器臨時(shí)目錄幕袱,轉(zhuǎn)義臨時(shí)文件)

PHP處理:$_FILES,$_FILES說(shuō)明悠瞬,文件移動(dòng)(copy们豌,move_uploaded_file),驗(yàn)證文件類型(MIME)浅妆,文件重命名(唯一性望迎,可識(shí)別區(qū)分)

上傳函數(shù)封裝

文件操作:原因(保存不經(jīng)常變化數(shù)據(jù)量小的數(shù)據(jù);配置文件凌外,流量統(tǒng)計(jì)辩尊,靜態(tài)網(wǎng)頁(yè)生成,文件下載康辑。摄欲。。)

目錄操作:opendir疮薇,readdir胸墙,rewinddir,closedir按咒,scandir

自定義實(shí)現(xiàn)scandir函數(shù)功能

文件判斷:file_exists迟隅,is_dir,is_file胖齐,mkdir玻淑,rmdir,getcwd呀伙,chdir补履,文件上傳按月分類管理

循環(huán)輸出文件夾下所有文件及子文件夾:靜態(tài)變量,函數(shù)遞歸(原理剿另,遞歸點(diǎn)箫锤,遞歸出口)

文件操作:讀和寫(xiě)贬蛙,PHP5(file_get_contents,file_put_contents[FILE_APPEND谚攒,F(xiàn)ILE_USE_INCLUDE_PATH]阳准,array file),PHP4(fopen馏臭,Mode[r野蝇,r+,w括儒,w+绕沈,a,a+]帮寻,fgetc乍狐,fgets,fread固逗,fputs浅蚪,fwrite,fclose烫罩,fseek)

文件相關(guān)函數(shù):copy惜傲,unlink,rename嗡髓,filemtime操漠,filesize收津,fileperms

文件下載:html下載(a href=‘use.zip’饿这,缺點(diǎn):文件格式簡(jiǎn)單,暴露文件完整路徑)撞秋,PHP(header("Content-type:

application/octet-stream")长捧,header("Content-Disposition:

attachment; filename=filename" ),輸出文件內(nèi)容)

作業(yè):

1.文件上傳保存到數(shù)據(jù)庫(kù)(路徑)

2.站點(diǎn)計(jì)數(shù)功能:記錄訪客記錄吻贿,IP串结,訪問(wèn)時(shí)間

3.循環(huán)刪除空文件夾

4.下載站點(diǎn)制作:數(shù)據(jù)庫(kù)實(shí)現(xiàn)(序號(hào),文件名舅列,描述肌割,地址,下載次數(shù)帐要,假名)

5.斐波那契數(shù)列:后一下等于前兩項(xiàng)的和把敞,求N項(xiàng)值

6.100以內(nèi)素?cái)?shù)


【第二部分】

0你Mysql擴(kuò)展庫(kù),PHP操作mysql

PHP操作mysql數(shù)據(jù)庫(kù)的主要擴(kuò)展庫(kù):mysql(面向過(guò)程)榨惠,mysqli(面向過(guò)程和對(duì)象),pdo(面向?qū)ο螅?/p>

配置mysql擴(kuò)展庫(kù):php.ini加載extension笨觅,配置擴(kuò)展路徑extension_dir

PHP操作mysql:原理傲诵,連接數(shù)據(jù)庫(kù)(mysql_connect[host,user,pass,new_link]),關(guān)閉連接(mysql_close)愤炸,選擇數(shù)據(jù)庫(kù)(mysql_select_db),發(fā)送sql(mysql_query掉奄,不同類型sql的返回值不同)规个,解析結(jié)果集資源(mysql_num_rows結(jié)果集行數(shù),mysql_fetch系列獲得結(jié)果集中數(shù)據(jù)姓建,結(jié)果集指針绰姻,遍歷結(jié)果集)

其他相關(guān)函數(shù):受影響行數(shù)(mysql_affected_rows),新增數(shù)據(jù)的ID(mysql_insert_id)引瀑,設(shè)置結(jié)果集指針(mysql_data_seek)

注冊(cè)成功跳轉(zhuǎn)功能狂芋,分頁(yè)功能(一次性獲取,按頁(yè)獲群┰浴)

HTTP協(xié)議:超文本傳輸協(xié)議帜矾,b/s架構(gòu)項(xiàng)目遵循的基本協(xié)議,瀏覽器服務(wù)器通信的基本原理(請(qǐng)求連接(TCP/IP協(xié)議)屑柔,連接成功屡萤,瀏覽器發(fā)送請(qǐng)求,服務(wù)器處理請(qǐng)求掸宛,瀏覽器處理結(jié)果死陆,關(guān)閉連接),HTTP協(xié)議兩部分(請(qǐng)求唧瘾,響應(yīng))措译,url,特點(diǎn)(支持客戶/服務(wù)器模式饰序,簡(jiǎn)單快速[只需請(qǐng)求方法和路徑]领虹,靈活[任意數(shù)據(jù)],無(wú)連接[每次連接只處理一個(gè)請(qǐng)求]求豫,無(wú)狀態(tài)[事務(wù)處理沒(méi)有記憶能力])

HTTP請(qǐng)求:四部分(請(qǐng)求行塌衰,請(qǐng)求頭,空行蝠嘉,請(qǐng)求主體)最疆,請(qǐng)求行(請(qǐng)求方式,請(qǐng)求文件蚤告,協(xié)議/版本)努酸,請(qǐng)求頭(host,accept-encoding罩缴,referer蚊逢,connection层扶,accept-language,cookie烙荷,user-agent镜会,accept,content-length(post)终抽,if-modified-since(get)戳表,content-type(post)),空白行昼伴,請(qǐng)求主體(post請(qǐng)求數(shù)據(jù))匾旭,telnet模擬請(qǐng)求

HTTP響應(yīng):四部分(狀態(tài)行,響應(yīng)頭圃郊,空行价涝,響應(yīng)主體),狀態(tài)行(協(xié)議/版本持舆,狀態(tài)碼色瘩,狀態(tài)說(shuō)明),響應(yīng)頭(server逸寓,date居兆,last-modified,content-length竹伸,content-type泥栖,location,refresh勋篓,content-encodeing吧享,cache-control),空行生巡,響應(yīng)主體(內(nèi)容)耙蔑,header之前不能輸出,header設(shè)置cookie

函數(shù)調(diào)用前不能輸出的函數(shù):session_start孤荣,setcookie,header须揣,output_buffering

常用回應(yīng)狀態(tài)信息:1XX(服務(wù)器接收請(qǐng)求盐股,繼續(xù)處理),2XX(成功耻卡,200)疯汁,3XX(重定向,302重定向卵酪,304沒(méi)有修改)幌蚊,4XX(請(qǐng)求錯(cuò)誤谤碳,404找不到,403禁止)溢豆,5XX(服務(wù)器錯(cuò)誤蜒简,502無(wú)效響應(yīng))

PHP模擬響應(yīng)和請(qǐng)求:響應(yīng)(跳轉(zhuǎn),刷新漩仙,發(fā)送圖片搓茬,下載(application/octet-stream,content-disposition:attachment;filename)队他,請(qǐng)求(fsockopen卷仑,fwrite,feof麸折,fgets锡凝,get請(qǐng)求,post請(qǐng)求)

面向?qū)ο螅好嫦蜻^(guò)程(操作流程)和面向?qū)ο螅ú僮髦黧w)垢啼,oop(一種軟件設(shè)計(jì)架構(gòu)思想)

基本概念:類(對(duì)象的抽象)私爷,對(duì)象(類的實(shí)例化/類類型(自定義數(shù)據(jù)類型)),實(shí)例化膊夹,成員(類中的變量衬浑,函數(shù),常量)

語(yǔ)法操作:定義類(class)放刨,實(shí)例化(new工秩,帶括號(hào),不帶括號(hào))进统,強(qiáng)制轉(zhuǎn)換(object)助币,stdClass(空類),訪問(wèn)修飾限定符(var螟碎,public眉菱,protected,private掉分,區(qū)別)俭缓,對(duì)象訪問(wèn)成員(->),類中成員只有三個(gè)(屬性酥郭,方法和常量华坦,不能echo),屬性定義的值必須是固定值不从,如何訪問(wèn)私有屬性(方法惜姐,$this)

內(nèi)存說(shuō)明:類,對(duì)象椿息,方法歹袁,屬性(從空間使用上劃分坷衍,非內(nèi)存劃分)

魔術(shù)方法:構(gòu)造方法(初始化),析構(gòu)方法(釋放資源条舔,unset對(duì)象)枫耳,構(gòu)造方法私有化

構(gòu)造方法兼容:類名方法

大小寫(xiě)區(qū)分:屬性,數(shù)組下標(biāo)和變量

對(duì)象傳遞:引用傳遞

對(duì)象比較:==(同類對(duì)象且屬性值相同)逞刷,===(同一對(duì)象)

DB類:類文件命名(類名.class.php)

作業(yè):封裝getAll和getRow方法

自動(dòng)加載:實(shí)例化對(duì)象前必須有類定義嘉涌,自動(dòng)加載(__autoload),自動(dòng)加載原理夸浅,自動(dòng)加載沖突(spl_autoload_register)

類常量:定義(const)仑最,內(nèi)存劃分,訪問(wèn)(類訪問(wèn)帆喇,范圍解析操作符警医,對(duì)象訪問(wèn)(方法)),self關(guān)鍵字坯钦,self和this區(qū)別

靜態(tài)成員:定義(static)预皇,屬性,方法婉刀,訪問(wèn)(范圍解析操作符)吟温,靜態(tài)屬性與常量的訪問(wèn)區(qū)別

對(duì)象計(jì)數(shù)器制作:思路

靜態(tài)方法與非靜態(tài)方法區(qū)別($this)

魔術(shù)方法:__toString()(echo對(duì)象),__clone()(復(fù)制成不同對(duì)象突颊,克隆不走構(gòu)造方法鲁豪,阻止克隆(private))

單例模式:概念(一個(gè)類只有一個(gè)對(duì)象)律秃,原因(省資源)爬橡,原理(三私一公)

工廠模式:概念(產(chǎn)生對(duì)象),原因(方便管理)棒动,工廠單例模式

面向?qū)ο蟛灰欢ㄓ蓄悾╦s)

Oop三大特性:封裝糙申,繼承,多態(tài)

封裝:數(shù)據(jù)和數(shù)據(jù)操作船惨,制作類的過(guò)程柜裸,隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié)(私有化),對(duì)外提供使用接口(限制讀和寫(xiě))

繼承:一個(gè)對(duì)象直接使用另一個(gè)對(duì)象的屬性和方法掷漱,減少代碼的重復(fù)性

多態(tài):接口的多種不同的實(shí)現(xiàn)方式粘室,PHP中沒(méi)有

繼承:語(yǔ)法(extends),繼承原理卜范,繼承成員控制(protected),繼承訪問(wèn)(子類訪問(wèn)父類鹿榜,父類訪問(wèn)子類)

繼承沖突:重寫(xiě)海雪,控制級(jí)別(子類弱于父類)锦爵,訪問(wèn)父類同名方法(parent)

PHP單繼承,鏈?zhǔn)嚼^承(多繼承)奥裸,繼承的使用(表類繼承DB類)

特殊類:不能被繼承的類和只能被繼承的類险掀,final類,final方法(可以被繼承但不能別重寫(xiě))湾宙,abstract類(不能實(shí)例化)樟氢,abstract方法

項(xiàng)目設(shè)計(jì):項(xiàng)目大,團(tuán)隊(duì)多(接口規(guī)范侠鳄,抽象類規(guī)范)埠啃,項(xiàng)目小(不使用)

接口:專門(mén)規(guī)定類的結(jié)構(gòu)伟恶,語(yǔ)法(interface)碴开,接口體(常量和方法,不能實(shí)現(xiàn)方法博秫,只能public)潦牛,實(shí)現(xiàn)接口(implements),子類必須實(shí)現(xiàn)接口所有方法挡育,實(shí)現(xiàn)多個(gè)接口

面試題:PHP是否支持多繼承巴碗?如何模擬?接口是不是類即寒?接口是不是抽象類橡淆?

PHP重載:用戶操作不存在或者不可用的成員屬性或者方法時(shí)的處理

屬性重載:__get(),__set()蒿叠,__isset()(isset和empty時(shí)調(diào)用)明垢,__unset()(unset調(diào)用)

方法重載:__call(),__callStatic()

重載意義:限定用戶操作的條件市咽,糾錯(cuò)

作業(yè):最大公約數(shù)(輾轉(zhuǎn)相除)

對(duì)象保存與還原:file_put_contents保存痊银,file_get_contents獲取,對(duì)象不能直接保存

序列化:serialize

反序列化:unserialize施绎,PHP_Incomplete_Class溯革,得不到原對(duì)象原因(資源釋放),引入類文件即可得到原對(duì)象谷醉,自動(dòng)加載類致稀,數(shù)據(jù)庫(kù)連接失效

對(duì)象保存與還原:__wakeup(),__sleep()

對(duì)象判斷:instanceof俱尼,繼承對(duì)象同屬于子類和父類

對(duì)象涉及方法:class_exists抖单,interface_exists,method_exists,get_class(得到對(duì)象類名)矛绘,get_parent_class(得到父類名)

對(duì)象遍歷:屬性遍歷耍休,常規(guī)foreach遍歷,類內(nèi)foreach遍歷($this)货矮,類內(nèi)具體屬性遍歷(iterator預(yù)定義接口)

【PDO】:PDO羊精,功能(方便移植),原理囚玫,配置(擴(kuò)展)

PDO主要類:PDO(數(shù)據(jù)庫(kù)連接喧锦,sql傳輸),PDOStatement(結(jié)果集抓督,預(yù)處理)燃少,PDOException(PDO異常處理)

PDO類:構(gòu)造函數(shù)(dsn數(shù)據(jù)源,用戶名本昏,密碼)供汛,對(duì)象銷毀(沒(méi)有提供,unset涌穆,null)怔昨,執(zhí)行SQL(無(wú)結(jié)果集exec(增刪改),lastInsertId宿稀;有結(jié)果集PDOStatement query)趁舀,錯(cuò)誤處理(errorCode,errorInfo)

PDOStatement類:相關(guān)函數(shù)(rowCount祝沸,columnCount)矮烹,遍歷結(jié)果集(fetch[FETCH_ASSOC,F(xiàn)ETCH_NUM罩锐,F(xiàn)ETCH_BOTH奉狈,F(xiàn)ETCH_OBJ,F(xiàn)ETCH_BOUND]涩惑,bindColumn仁期,fetchAll,fetchColumn竭恬,fetchObject跛蛋,setFetchMode),預(yù)處理(prepare痊硕,execute[array參數(shù)]赊级,bindParam[推薦,先綁定后賦值]岔绸,bindValue[不推薦理逊,先賦值后綁定橡伞,每次都要綁定]),事務(wù)處理(beginTransaction挡鞍,commit骑歹,rollBack)

PDO屬性設(shè)置:setAttribute预烙,getAttribute墨微,屬性名與值(PDO::ATTR_AUTOCOMMIT(1,0),PDO::ATTR_CASE(PDO::CASE_LOWER扁掸,PDO::CASE_UPPER翘县,PDO::CASE_NATURAL),PDO::ATTR_ERRMODE(PDO::ERRMODE_SILENT谴分,PDO::ERRMODE_WARNING锈麸,PDO::ERRMODE_EXCEPTION),PDO::ATTR_PERSISTENT(TRUE牺蹄,F(xiàn)ALSE))

PDOException類:try-catch-throw

反射:reflection反射機(jī)制忘伞,反射(ReflectionClass::export(類)),反射類內(nèi)部(new

ReflectionClass(類)沙兰,getConstants氓奈,getProperties,isStatic鼎天,getMethods)

Ecshop安裝:虛擬主機(jī)舀奶,gd庫(kù)擴(kuò)展,配置數(shù)據(jù)庫(kù)斋射,配置后臺(tái)管理員育勺,安裝測(cè)試數(shù)據(jù),訪問(wèn)后臺(tái)

購(gòu)物系統(tǒng):仿造ecshop制作一個(gè)小型的商品管理與購(gòu)物系統(tǒng)

功能:后臺(tái)用戶登錄(表單罗岖,session涧至,cookie,驗(yàn)證碼)桑包,商品分類管理(無(wú)限極分類)南蓬,商品管理(文件處理,縮略圖捡多,水印處理蓖康,分頁(yè),商品批量管理垒手,所見(jiàn)即所得編輯器使用)蒜焊,時(shí)間允許(前臺(tái)商品瀏覽,購(gòu)物車動(dòng)作科贬,用戶管理等)

設(shè)計(jì)項(xiàng)目:從項(xiàng)目管理者角度設(shè)計(jì)項(xiàng)目(項(xiàng)目架構(gòu)(框架泳梆,源碼鳖悠,開(kāi)發(fā)模式),代碼結(jié)構(gòu)(項(xiàng)目目錄劃分优妙,功能劃分)

當(dāng)前流行開(kāi)發(fā)模式:二次開(kāi)發(fā)乘综,框架開(kāi)發(fā)

數(shù)據(jù)架構(gòu):數(shù)據(jù)大小,更新頻率套硼;兩大數(shù)據(jù)庫(kù)陣營(yíng)(SQL卡辰,NOSQL),初級(jí)架構(gòu)(表邪意,表功能九妈,表結(jié)構(gòu),表內(nèi)數(shù)據(jù)關(guān)系)

前臺(tái)和后臺(tái):前臺(tái)(用戶看雾鬼,顯示數(shù)據(jù))萌朱,后臺(tái)(管理員看,管理數(shù)據(jù))策菜,前后臺(tái)按功能劃分晶疼,美工和程序員按工作內(nèi)容劃分

項(xiàng)目目錄結(jié)構(gòu),代碼分部:項(xiàng)目分前臺(tái)后臺(tái)又憨,admin為后臺(tái)目錄翠霍;前后臺(tái)公共部分前臺(tái)includes下,后臺(tái)公共文件admin/includes竟块,前后臺(tái)都有默認(rèn)訪問(wèn)入口index.php

項(xiàng)目代碼設(shè)計(jì):數(shù)據(jù)是核心壶运,代碼是訪問(wèn)和管理數(shù)據(jù);數(shù)據(jù)存放在mysql里浪秘,PHP通過(guò)db.class.php訪問(wèn)數(shù)據(jù)庫(kù)(includes下)蒋情;邏輯與顯示分開(kāi);公共功能用類封裝(文件上傳耸携,圖片處理棵癣,分頁(yè))

后臺(tái)用戶登錄功能設(shè)計(jì):登錄表單(登錄,驗(yàn)證碼夺衍,退出狈谊,找回密碼,記住密碼)沟沙,admin/templates/login.php河劝,代碼由簡(jiǎn)單到復(fù)雜;一類事務(wù)請(qǐng)求一個(gè)PHP文件(登錄:admin/privilege.php)

后臺(tái)項(xiàng)目初始化:運(yùn)行環(huán)境(錯(cuò)誤級(jí)別矛紫,錯(cuò)誤顯示)赎瞎,基本目錄常量,配置文件系統(tǒng)颊咬,公共代碼(自動(dòng)加載函數(shù)务甥,跳轉(zhuǎn)等)牡辽,admin/includes/init.php

Admin/includes/init.php:編碼設(shè)置(header),目錄常量(__DIR__敞临,反斜杠處理态辛,ROOT_DIR,ADMIN_DIR挺尿,INCLUDE_DIR奏黑,ADMIN_INCLUDE_DIR,ADMIN_TEMPLATE_DIR)票髓,5.3低版本目錄常量(__FILE__)

配置文件系統(tǒng):/config/config.php攀涵,數(shù)據(jù)庫(kù)連接信息,二維數(shù)組(便于區(qū)分)

加載配置文件:admin/includes/init.php洽沟,配置文件目錄常量,配置文件全局化($GLOBALS[‘config’])

運(yùn)行環(huán)境設(shè)置:ini_set()(error_reporting蜗细,display_errors)裆操,錯(cuò)誤級(jí)別關(guān)系

登錄界面:從ecshop拿,js文件炉媒,image文件踪区,css文件

登錄功能:privilege.php實(shí)現(xiàn),引入初始化文件吊骤,引入login.php文件缎岗,action(區(qū)分動(dòng)作),if分支判斷動(dòng)作

用戶登錄表單設(shè)計(jì):請(qǐng)求privilege.php白粉,設(shè)計(jì)隱藏域act传泊,$_REQUEST(GPC,request_order鸭巴,variables_order)

驗(yàn)證用戶信息:設(shè)計(jì)管理員表(庫(kù)眷细,表,字段(id鹃祖,用戶名溪椎,密碼,注冊(cè)時(shí)間恬口,上次登錄時(shí)間和IP))校读,插入一條數(shù)據(jù),接收用戶提交數(shù)據(jù)進(jìn)行驗(yàn)證祖能,數(shù)據(jù)庫(kù)操作(使用DB類歉秫,每張表一個(gè)類(/includes/adminTable.class.php))

表類設(shè)計(jì):繼承db類,屬性(table_name芯杀,fields)

驗(yàn)證調(diào)用表類:自動(dòng)加載(/includes/function.php)端考,初始化文件引入公共函數(shù)庫(kù)雅潭,實(shí)例化表對(duì)象(傳入數(shù)據(jù)庫(kù)連接信息,連接數(shù)據(jù)庫(kù))却特,修改實(shí)例化方式(db類中自動(dòng)調(diào)用配置文件)扶供,使用用戶名和密碼驗(yàn)證用戶(正確得到用戶信息,錯(cuò)誤返回FALSE)裂明,修改用戶密碼(md5加密)

工作原理分析:用戶請(qǐng)求到得到驗(yàn)證結(jié)果

驗(yàn)證結(jié)果處理:界面跳轉(zhuǎn)(PHP中header椿浓,js中document.location.href,HTML中refresh)闽晦,創(chuàng)建跳轉(zhuǎn)模板/admin/templates/redirect.php扳碍,跳轉(zhuǎn)函數(shù)admin_redirect在/includes/function.php,privilege中調(diào)用跳轉(zhuǎn)函數(shù)

驗(yàn)證用戶是否登錄:定義變量判斷仙蛉,get傳參笋敞,會(huì)話數(shù)據(jù)

開(kāi)啟會(huì)話機(jī)制:默認(rèn)關(guān)閉(php.ini的session.auto_start),session_start開(kāi)啟荠瘪,$_SESSION(訪問(wèn)會(huì)話數(shù)據(jù))夯巷,session實(shí)現(xiàn)用戶登錄判斷

Session原理:session_start()開(kāi)啟session并讀取session文件內(nèi)容到$_SESSION,腳本結(jié)束將$_SESSION內(nèi)容寫(xiě)到session文件哀墓,然后釋放$_SESSION變量

會(huì)話周期:瀏覽器關(guān)閉session失效趁餐,瀏覽器與服務(wù)器會(huì)話流程

Cookie會(huì)話技術(shù):服務(wù)器在瀏覽器保存數(shù)據(jù),cookie原理篮绰,session與cookie的區(qū)別

Cookie使用:設(shè)置cookie后雷,獲得cookie($_COOKIE和$_REQUEST),修改$_COOKIE(再次訪問(wèn)無(wú)效)吠各,cookie變量有效期臀突,session失效原理,清除cookie(setcookie)走孽,cookie目錄區(qū)分惧辈,cookie跨域,cookie變相保存數(shù)組

Session文件:存儲(chǔ)(php.ini中session.save_path)

Cookie文件:瀏覽器指定的存儲(chǔ)目錄磕瓷,IE和FF區(qū)別盒齿,F(xiàn)F查看cookie文件

Session登錄判定:用戶登錄時(shí)session記錄用戶信息,index.php中判定session信息困食,初始化文件開(kāi)啟session

模擬session實(shí)現(xiàn)跨腳本

框架布局后臺(tái):使用ecshop后臺(tái)布局边翁,index.php

Index.php實(shí)現(xiàn):與privilege.php處理方式一致,使用ecshop的模板

退出登錄:清楚session硕盹,跳轉(zhuǎn)到privilege.php登陸頁(yè)符匾,top.php(target屬性)

用戶信息顯示:$_SESSION,用戶上次登錄時(shí)間(登錄后修改上次登錄時(shí)間)

Session深入:$_SESSION只能是關(guān)聯(lián)數(shù)組瘩例,session可以保存對(duì)象啊胶,session過(guò)期受cookie影響甸各,session文件銷毀(session_destroy,$_SESSION焰坪,setcookie)趣倾,session分層(session.save_path,手動(dòng)建立文件夾)

禁用cookie后session使用(其他方式讓瀏覽器帶sessionID)某饰,a標(biāo)簽自動(dòng)攜帶sessionID(session.use_trans_id儒恋,session.use_only_cookie),PHP腳本傳遞(手動(dòng)添加黔漂,session_id()诫尽,session_name())

驗(yàn)證碼:驗(yàn)證碼意義(防惡意請(qǐng)求),原理(Completely

Automated Public Turing Test to Tell Computers and Humans Apart (全自動(dòng)區(qū)分計(jì)算機(jī)和人類的圖靈測(cè)試)炬守,將驗(yàn)證碼內(nèi)容放到圖片上)牧嫉,驗(yàn)證碼流程(生成,保存到session中劳较,添加到圖片上驹止,用戶輸入,驗(yàn)證)观蜗,對(duì)比ecshop驗(yàn)證碼

GD庫(kù):圖像處理擴(kuò)展,GD處理圖片流程(創(chuàng)建圖片資源(已有或者新建)衣洁,操作圖片(裁剪圖片墓捻,修改圖片,填充圖片坊夫,縮略圖砖第,寫(xiě)驗(yàn)證碼),保存或者輸出环凿,釋放資源)

制作驗(yàn)證碼:獲得驗(yàn)證碼內(nèi)容梧兼,驗(yàn)證碼寫(xiě)到session,驗(yàn)證碼寫(xiě)到圖片智听,驗(yàn)證碼圖片顯示到表單

封裝驗(yàn)證碼類:復(fù)雜化驗(yàn)證碼方法(背景顏色隨機(jī)羽杰,文字顏色隨機(jī),添加像素點(diǎn)到推,添加干擾線)

項(xiàng)目應(yīng)用驗(yàn)證碼:請(qǐng)求動(dòng)作獲得驗(yàn)證碼圖片考赛,驗(yàn)證用戶登錄時(shí)使用驗(yàn)證碼,新增驗(yàn)證驗(yàn)證碼方法(驗(yàn)證碼類內(nèi))莉测,點(diǎn)擊驗(yàn)證碼圖片更換驗(yàn)證碼(js)

保存用戶登錄信息:cookie存儲(chǔ)記錄標(biāo)識(shí)(用戶ID)颜骤,判斷用戶是否登錄(判斷session,判斷cookie)捣卤,增加通過(guò)用戶ID獲取用戶信息方法忍抽,危險(xiǎn)

制作商品分類:數(shù)據(jù)表設(shè)計(jì)(主鍵八孝,分類名,排序鸠项,父ID)干跛,插入數(shù)據(jù),category.php锈锤,商品分類列表界面驯鳖,修改連接(menu),商品分類類久免,調(diào)用商品分類的方法浅辙,模板顯示分類數(shù)據(jù)

無(wú)限極分類:原理(找頂級(jí)分類,找子分類)阎姥,非遞歸實(shí)現(xiàn)(指定父分類)记舆,遞歸(遞歸點(diǎn),遞歸出口)呼巴,遞歸原理泽腮,縮進(jìn)(層級(jí)標(biāo)識(shí)),根據(jù)排序字段排序

構(gòu)造表全名:表名衣赶,db類表前綴诊赊,db類中增加表名構(gòu)造,表類中使用

給字段屬性賦值:添加獲得表結(jié)構(gòu)方法(獲得所有鍵府瞄,主鍵)

分類文件訪問(wèn)驗(yàn)證:將登錄驗(yàn)證放到init.php碧磅,引入init.php文件驗(yàn)證,分離需要驗(yàn)證的請(qǐng)求(登錄相關(guān)不需要驗(yàn)證遵馆,$_SERVER[‘SCRIPT_NAME’]鲸郊,basename(),dir_name())

分類操作:增加分類(新增表單货邓,提交表單秆撮,處理表單數(shù)據(jù),分類入庫(kù))换况,分類指定上級(jí)分類职辨,數(shù)組接收數(shù)據(jù)提交數(shù)據(jù),刪除分類(提示用戶(js)复隆,判斷分類是否可被刪除(是否末級(jí))拨匆,刪除分類)

編輯分類功能:流程(用戶點(diǎn)擊菜單進(jìn)入編輯,顯示分類數(shù)據(jù)挽拂,用戶編輯操作惭每,提交表單,處理編輯數(shù)據(jù))

重封裝通過(guò)id獲取數(shù)據(jù)方法(重復(fù),放到db類)台腥,表單添加隱藏分類ID

商品分類完成:沒(méi)有商品數(shù)量宏赘,分類列表緩存(判斷緩存,更新緩存)黎侈,無(wú)限極分類縮放

商品管理:數(shù)據(jù)表設(shè)計(jì)(仿照ecshop)察署,數(shù)據(jù)插入,goods.php峻汉,完善商品列表(菜單連接贴汪,動(dòng)作處理,數(shù)據(jù)對(duì)象操作休吠,列表模板扳埂,圖標(biāo))

分頁(yè):流程(確定數(shù)據(jù)顯示數(shù)量,確定頁(yè)數(shù)瘤礁,limit)阳懂,分頁(yè)跳轉(zhuǎn)(首頁(yè),上一頁(yè)柜思,下一頁(yè)岩调,末頁(yè),數(shù)字頁(yè)赡盘,下拉頁(yè))

項(xiàng)目分頁(yè):修改配置文件(每頁(yè)顯示數(shù)據(jù)條數(shù))号枕,修改列表功能(頁(yè)碼,每頁(yè)顯示數(shù)目參數(shù))陨享,修改列表功能(獲得總記錄數(shù)堕澄,數(shù)據(jù),二維數(shù)組)霉咨,修改調(diào)用列表功能

分頁(yè)類:?jiǎn)为?dú)分頁(yè)不含數(shù)據(jù)處理(參數(shù)),HTML(標(biāo)簽拍屑,ID)

刪除商品:處理方法(回收站)途戒,增加刪除標(biāo)志(修改數(shù)據(jù)表),刪除流程(確認(rèn)(js)僵驰,修改刪除標(biāo)志喷斋,修改列表功能,更新列表)

回收站操作:分頁(yè)顯示(配置文件蒜茴,分頁(yè)類使用)星爪,恢復(fù)

新增商品:流程(連接,動(dòng)作粉私,表方法顽腾,模板,選項(xiàng)卡功能)

插入功能重復(fù):新增插入方法(db類,驗(yàn)證數(shù)組信息抄肖,數(shù)組拼湊SQL久信,返回插入結(jié)果),調(diào)用插入功能

文件上傳:post漓摩,enctype(mutipart/form-data)裙士,$_FILES(專門(mén)接收文件數(shù)據(jù),字段說(shuō)明管毙,錯(cuò)誤說(shuō)明(0沒(méi)有問(wèn)題腿椎,1超出大小,2超出大小夭咬,3部分上傳啃炸,4沒(méi)有上傳,6沒(méi)有臨時(shí)文件夾皱埠,7文件寫(xiě)入臨時(shí)文件夾出錯(cuò)))肮帐,文件上傳原理(PHP服務(wù)端),移動(dòng)臨時(shí)文件(move_uploaded_file)边器,文件驗(yàn)證(大小训枢,類型,重命名忘巧,strrchar)

圖片上傳類:配置文件(上傳大小恒界,上傳類型(字符串),上傳路徑)砚嘴,上傳命名規(guī)則(不重復(fù)十酣,保持原來(lái)后綴,易于識(shí)別(前綴))际长,文件上傳流程(錯(cuò)誤判斷耸采,文件大小判斷,文件類型判斷工育,重命名虾宇,是否上傳成功,返回新文件名)如绸,文件處理失敗商品仍上傳(錯(cuò)誤提示)

商品插入流程回顧:收集表單數(shù)據(jù)嘱朽,設(shè)置初始值(點(diǎn)擊量),上傳文件判斷怔接,制作縮略圖判斷搪泳,調(diào)用模型,插入數(shù)據(jù)

制作縮略圖:流程(獲得圖片資源(原始圖扼脐,目標(biāo)圖)岸军,處理(采用,復(fù)制),保存或者輸出凛膏,釋放資源)杨名,采樣(矩形區(qū)域確定)

封裝縮略圖制作:數(shù)據(jù)獲取(原圖大小猖毫,目標(biāo)圖大小台谍,函數(shù)類型使用),縮略圖比例(寬高比)吁断,縮略圖制作流程細(xì)化(計(jì)算原圖寬高和縮略圖最大尺寸趁蕊,確定縮略圖大小,創(chuàng)建圖片資源(原圖仔役,縮略圖)掷伙,采樣復(fù)制,保存輸出又兵,銷毀資源)

縮略圖補(bǔ)白:縮略圖大小固定(不夠的地方補(bǔ)白任柜,制作縮略圖背景)優(yōu)劣(方便設(shè)計(jì)顯示,與原圖不一致)

水印制作:圖片上的標(biāo)識(shí)沛厨,兩種(文字宙地,圖片),基本流程(原圖逆皮,水印圖宅粥,合并)

項(xiàng)目水印:配置文件电谣,流程詳細(xì)(獲得原圖資源秽梅,判斷水印圖資源,獲得水印圖資源剿牺,獲得圖片寬高企垦,判斷水印位置,計(jì)算水印位置晒来,判斷合并結(jié)果竹观,保存,返回水印圖名稱)潜索,修改上傳圖片的名字為水印圖

MVC:軟件設(shè)計(jì)典范(模型Model,視圖View懂酱,控制器Controller)竹习,輸入處理和輸出的分離,MVC框架(功能劃分M列牺,V整陌,C),PHP代碼發(fā)展(混編,顯示和邏輯分離泌辫,數(shù)據(jù)邏輯與業(yè)務(wù)邏輯分離)随夸,action(C處理一類事務(wù),C包含多個(gè)Action)震放,區(qū)分(模塊module宾毒,模型model,模板template)

自動(dòng)安全更新方法:拼湊sql語(yǔ)句殿遂,更新诈铛,流程(清理無(wú)效字段,拼湊sql語(yǔ)句(更新部分墨礁,條件)幢竹,強(qiáng)制設(shè)定條件(判斷條件,自動(dòng)分析條件)恩静,返回執(zhí)行結(jié)果)

自動(dòng)刪除:根據(jù)ID進(jìn)行刪除(單個(gè)=焕毫,數(shù)組in),流程(參數(shù)添加引號(hào)驶乾,拼湊刪除條件邑飒,返回刪除結(jié)果)

Session入庫(kù):session入內(nèi)存,session入庫(kù)(修改session存儲(chǔ)機(jī)制)轻掩,session入庫(kù)原理幸乒,修改session系統(tǒng)(session讀寫(xiě)功能),修改流程(準(zhǔn)備讀寫(xiě)方法唇牧,告知session系統(tǒng)(session_set_save_handler())

Session表設(shè)計(jì):字段(sessionID罕扎,數(shù)據(jù),過(guò)期時(shí)間)

Session方法完善:讀(根據(jù)sessionID數(shù)據(jù)庫(kù)查詢)丐重,寫(xiě)(根據(jù)sessionID腔召,session數(shù)據(jù)寫(xiě)入或者更新數(shù)據(jù)),開(kāi)啟(提取公共連接數(shù)據(jù)庫(kù)代碼)扮惦,數(shù)據(jù)庫(kù)連接資源作用域臀蛛,銷毀(根據(jù)sessionID刪除數(shù)據(jù))憎夷,回收(根據(jù)配置清理過(guò)期session别瞭,expire字段)铁坎,session配置(gc_maxlifetime狸棍,gc_probobility饮焦,gc_divisor)

封裝session類:構(gòu)造函數(shù)(設(shè)置session處理器闪湾,數(shù)組傳遞參數(shù)遍膜,開(kāi)啟session爵赵,開(kāi)啟父類構(gòu)造函數(shù))等恐,完善各個(gè)方法

Session方法執(zhí)行順序(讀在回收前)洲劣,修改讀方法(不讀取過(guò)期數(shù)據(jù)备蚓,讀判斷expire),session銷毀(停止執(zhí)行寫(xiě)方法)

在線編輯器:ckeditor囱稽,簡(jiǎn)介郊尝,引入(js引入,調(diào)用)战惊,保存編輯數(shù)據(jù)流昏,配置ckeditor(高度,工具欄)样傍,ckfinder横缔,配置文件上傳(開(kāi)啟上傳,上傳目錄)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末衫哥,一起剝皮案震驚了整個(gè)濱河市茎刚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌撤逢,老刑警劉巖膛锭,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異蚊荣,居然都是意外死亡初狰,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)互例,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)奢入,“玉大人,你說(shuō)我怎么就攤上這事媳叨⌒裙猓” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵糊秆,是天一觀的道長(zhǎng)武福。 經(jīng)常有香客問(wèn)我,道長(zhǎng)痘番,這世上最難降的妖魔是什么捉片? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮汞舱,結(jié)果婚禮上伍纫,老公的妹妹穿的比我還像新娘。我一直安慰自己昂芜,他們只是感情好翻斟,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著说铃,像睡著了一般访惜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上腻扇,一...
    開(kāi)封第一講書(shū)人閱讀 51,624評(píng)論 1 305
  • 那天债热,我揣著相機(jī)與錄音,去河邊找鬼幼苛。 笑死窒篱,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的舶沿。 我是一名探鬼主播墙杯,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼括荡!你這毒婦竟也來(lái)了高镐?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤畸冲,失蹤者是張志新(化名)和其女友劉穎嫉髓,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體邑闲,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡算行,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了苫耸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片州邢。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖褪子,靈堂內(nèi)的尸體忽然破棺而出量淌,到底是詐尸還是另有隱情,我是刑警寧澤褐筛,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布类少,位于F島的核電站,受9級(jí)特大地震影響渔扎,放射性物質(zhì)發(fā)生泄漏硫狞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一晃痴、第九天 我趴在偏房一處隱蔽的房頂上張望残吩。 院中可真熱鬧,春花似錦倘核、人聲如沸泣侮。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)活尊。三九已至隶校,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛹锰,已是汗流浹背深胳。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留铜犬,地道東北人舞终。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像癣猾,于是被迫代替她去往敵國(guó)和親敛劝。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • PHP 學(xué)習(xí)目錄 ├─PHP視頻教程 1 LAMP網(wǎng)站構(gòu)建 │ ├─PHP教程 1.1.1 新版視頻形式介紹│ ...
    曹淵說(shuō)創(chuàng)業(yè)閱讀 16,156評(píng)論 29 417
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理纷宇,服務(wù)發(fā)現(xiàn)夸盟,斷路器,智...
    卡卡羅2017閱讀 134,659評(píng)論 18 139
  • 首先是特點(diǎn):1.block是C語(yǔ)言的呐粘。2.block是一種數(shù)據(jù)類型满俗,可以當(dāng)作參數(shù)傳遞,也可以當(dāng)作返回值作岖。3.是預(yù)先...
    WarmLikeYou閱讀 326評(píng)論 0 2
  • 1唆垃,下載編譯fast-rcnn fast-rcnn下載地址 Clone the Fast R-CNN reposi...
    Mahxn0閱讀 1,183評(píng)論 2 1