摘要:盡管事務(wù)是維護(hù)數(shù)據(jù)庫(kù)完整性的一個(gè)非常好的方法,但卻因?yàn)樗莫?dú)占性,有時(shí)會(huì)影響數(shù)據(jù)庫(kù)的性能,尤其是在很大的應(yīng)用系統(tǒng)中。由于在事務(wù)執(zhí)行的過(guò)程中,數(shù)據(jù)庫(kù)將會(huì)被鎖定,因此其它的用戶請(qǐng)求只能暫時(shí)等待直到該事務(wù)結(jié)束。
1、雙引號(hào)和單引號(hào)的區(qū)別
~雙引號(hào)解釋變量,單引號(hào)不解釋變量
~雙引號(hào)解釋轉(zhuǎn)義字符,單引號(hào)不解釋轉(zhuǎn)義字符,但是解釋"和
~能使單引號(hào)字符盡量使用單引號(hào),單引號(hào)的效率比雙引號(hào)要高(雙引號(hào)要先遍歷一遍,判斷里面有沒(méi)有變量,然后再進(jìn)行操作,而單引號(hào)則不需要判斷)
2、常用的超全局變量(8個(gè))
$_GET ----->get傳送方式 $POST ----->post傳送方式 $REQUEST ----->可以接收到get和post兩種方式的值 *** $GLOBALS ----->所有的變量都放在里面 $FILE ----->上傳文件使用 $SERVER ----->系統(tǒng)環(huán)境變量 * ** $SESSION ----->會(huì)話控制的時(shí)候會(huì)用到 $COOKIE ----->會(huì)話控制的時(shí)候會(huì)用到
3、HTTP狀態(tài)碼分類
1** - 信息,服務(wù)器收到的請(qǐng)求,需要請(qǐng)求者繼續(xù)執(zhí)行操作 2** - 成功,操作被成功接收并處理 3** - 重定向,需要進(jìn)一步的操作以完成請(qǐng)求 4** - 客戶端錯(cuò)誤,請(qǐng)求包含語(yǔ)法錯(cuò)誤或者無(wú)法完成請(qǐng)求 5** 服務(wù)器錯(cuò)誤,服務(wù)器在處理請(qǐng)求的過(guò)程 中發(fā)生了錯(cuò)誤
4、MySQL數(shù)據(jù)庫(kù)優(yōu)化
4.1事務(wù)的另一個(gè)重要作用是當(dāng)多個(gè)用戶同時(shí)使用相同的數(shù)據(jù)源時(shí),它可以利用鎖定數(shù)據(jù)庫(kù)的方法來(lái)為用戶提供一種安全的訪問(wèn)方式,這樣可以保證用戶的操作不被其它的用戶所干擾。
盡管事務(wù)是維護(hù)數(shù)據(jù)庫(kù)完整性的一個(gè)非常好的方法,但卻因?yàn)樗莫?dú)占性,有時(shí)會(huì)影響數(shù)據(jù)庫(kù)的性能,尤其是在很大的應(yīng)用系統(tǒng)中。由于在事務(wù)執(zhí)行的過(guò)程中,數(shù)據(jù)庫(kù)將會(huì)被鎖定,因此其它的用戶請(qǐng)求只能暫時(shí)等待直到該事務(wù)結(jié)束。如果一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)只有少數(shù)幾個(gè)用戶來(lái)使用,事務(wù)造成的影響不會(huì)成為一個(gè)太大的問(wèn)題;但假設(shè)有成千上萬(wàn)的用戶同時(shí)訪問(wèn)一個(gè)數(shù)據(jù)庫(kù)系統(tǒng),例如訪問(wèn)一個(gè)電子商務(wù)網(wǎng)站,就會(huì)產(chǎn)生比較嚴(yán)重的響應(yīng)延遲。
其實(shí),有些情況下我們可以通過(guò)鎖定表的方法來(lái)獲得更好的性能。下面的例子就用鎖定表的方法來(lái)完成前面一個(gè)例子中事務(wù)的功能。
4.2索引是提高數(shù)據(jù)庫(kù)性能的常用方法,它可以令數(shù)據(jù)庫(kù)服務(wù)器以比沒(méi)有索引快得多的速度檢索特定的行,尤其是在查詢語(yǔ)句當(dāng)中包含有MAX(),MIN()和ORDERBY這些命令的時(shí)候,性能提高更為明顯。
選取最適用的字段屬性,盡可能減少定義字段寬度,盡量把字段設(shè)置NOTNULL,例如"省份"、"性別"最好適用 ENUM,使用連接(JOIN)來(lái)代替子查詢,適用聯(lián)合(UNION)來(lái)代替手動(dòng)創(chuàng)建的臨時(shí)表,事務(wù)處理,鎖定表、優(yōu)化事務(wù)處理,適用外鍵,優(yōu)化鎖定表,建立索引,優(yōu)化查詢語(yǔ)句
5、語(yǔ)句include和require的區(qū)別是什么?為避免多次包含同一文件,可以用(?)語(yǔ)句代替他們
require是無(wú)條件包含,也就是如果一個(gè)流程里加入require,無(wú)論條件成立與否都會(huì)先執(zhí)行require,當(dāng)文件不存在或者無(wú)法打開的時(shí)候,會(huì)提示錯(cuò)誤,并且會(huì)終止程序執(zhí)行
include有返回值,而require沒(méi)有(可能因?yàn)槿绱?strong>require的速度比include快),如果被包含的文件不存在的化,那么會(huì)提示一個(gè)錯(cuò)誤,但是程序會(huì)繼續(xù)執(zhí)行下去
注意:包含文件不存在或者語(yǔ)法錯(cuò)誤的時(shí)候require是致命的,而include不是
require_once表示了只包含一次,避免了重復(fù)包含
6、如何不使用submit按鈕來(lái)提交表單?
如果我們不想用submit按鈕來(lái)提交表單,我們也可以用超鏈接來(lái)提交,我們可以這樣寫代碼:
Submit Me
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/22437.html
摘要:最近面試了不少公司,正好把記得的問(wèn)題做個(gè)總結(jié)。抽象類的接口的區(qū)別,不在于編程實(shí)現(xiàn),而在于程序設(shè)計(jì)模式的不同。一般來(lái)講,抽象用于不同的事物,而接口用于事物的行為。 最近面試了不少公司,正好把記得的問(wèn)題做個(gè)總結(jié)。 本文 github 會(huì)持續(xù)更新 公眾號(hào) 搜索 蘇生不惑 或者掃二維碼關(guān)注,每周更新。 showImg(https://segmentfault.com/img/bVbsYyM?w...
摘要:最近面試了不少公司,正好把記得的問(wèn)題做個(gè)總結(jié)。抽象類的接口的區(qū)別,不在于編程實(shí)現(xiàn),而在于程序設(shè)計(jì)模式的不同。一般來(lái)講,抽象用于不同的事物,而接口用于事物的行為。 最近面試了不少公司,正好把記得的問(wèn)題做個(gè)總結(jié)。 本文 github 會(huì)持續(xù)更新 公眾號(hào) 搜索 蘇生不惑 或者掃二維碼關(guān)注,每周更新。 showImg(https://segmentfault.com/img/bVbsYyM?w...
摘要:本書的地址篇收集了一些常見(jiàn)的基礎(chǔ)進(jìn)階面試題,基礎(chǔ)的面試題不再作答。如何實(shí)現(xiàn)持久化持久化,將在內(nèi)存中的的狀態(tài)保存到硬盤中,相當(dāng)于備份數(shù)據(jù)庫(kù)狀態(tài)。相當(dāng)于備份數(shù)據(jù)庫(kù)接收到的命令,所有被寫入的命令都是以的協(xié)議格式來(lái)保存的。 本書的 GitHub 地址:https://github.com/todayqq/PH... PHP 篇收集了一些常見(jiàn)的基礎(chǔ)、進(jìn)階面試題,基礎(chǔ)的面試題不再作答。 基礎(chǔ)篇 ...
閱讀 5019·2021-11-25 09:43
閱讀 1244·2021-11-24 09:38
閱讀 1987·2021-09-30 09:54
閱讀 2881·2021-09-23 11:21
閱讀 2426·2021-09-10 10:51
閱讀 2436·2021-09-03 10:45
閱讀 1222·2019-08-30 15:52
閱讀 1819·2019-08-30 14:13