摘要:它們的用處都是用來能讓數據正常插入到數據庫中,并防止注入,但是并不能做到防止注入。進來抽獎的用戶使用原子加鎖,實現抽獎次數自增,當抽獎次數到達時,返回不中獎。
mysql_real_escape_string mysql_escape_string有什么本質的區別,有什么用處?轉載于:https://zhuanlan.zhihu.com/p/...
答案并非標準,是作者經驗之談,僅供參考
mysql_real_escape_string需要預先連接數據庫,并可在第二個參數傳入數據庫連接(不填則使用上一個連接)
兩者都是對數據庫插入數據進行轉義,但是mysql_real_escape_string轉義時,會考慮數據庫連接的字符集。
它們的用處都是用來能讓數據正常插入到數據庫中,并防止sql注入,但是并不能做到100%防止sql注入。
為什么上述函數仍然無法100%防止SQL注入因為客戶端編碼以及服務器端編碼不同,可能產生注入問題,但是其實這種場景不多見。
PHP的連接組件mysql為什么被棄用?被棄用的原因是官方不再建議使用mysql_xx的數據庫操作方式,建議使用pdo和mysqli,因為不管從性能跟安全來看,mysqli都比mysql要好。
PHP的連接組件MySQLi 為什么比 MySQL好 什么是內存泄漏,js內存泄漏是怎么產生的?產生泄漏的原因有好幾種:
(1) 頁面元素被刪除,但是綁定在該元素上的事件未被刪除;
(2) 閉包維持函數內局部變量(外部不可控),使其得不到釋放;
(3) 意外的全局變量;
(4) 引用被刪除,但是引用內的引用,還存在內存中。
從上述原因上看,內存泄漏產生的根本原因是引用無法正確回收,值類型并不能引發內存泄漏。
對于每個引用,都有自己的引用計數,當引用計數歸零或被標記清除時,js垃圾回收器會認為該引用可以回收了。
什么是閉包,跟原型鏈、作用域鏈有什么關聯 一臺電腦配置無限好,可以同時打開多少個網頁65535 - 1024 = 64511 個
ip地址能被偽造嗎?http頭部可以被篡改,但是只能修改X_FORWARDED_FOR,真實ip地址(REMOTE_ADDR)很難修改(除非是路由器去修改),因為真實ip是底層會話ip地址,而且因為TCP 3次握手的存在,連接無法建立,偽造的意義不大,至于UDP的話,一般是內網才使用UDP通信。
有100萬個獎品,每個人可以中獎3次,先到先得,怎么控制并發,不能發超,并保證完全的先到先得模式百萬獎品在打亂后預先insert到數據庫,所有中獎操作,均只能update,不能insert。進來抽獎的用戶使用memcahe原子加鎖,實現抽獎次數自增,當抽獎次數到達3時,返回不中獎。
預先插入需要很多資源,如果獎品數量上了1億怎么辦? 內存比較寶貴,在不用內存加鎖的情況下怎么辦,并且如果碰到1億獎池的情況,預先插入數據庫肯定不好,怎么辦?設置獎品概率,分三張表,都使用innodb引擎,一張存中獎記錄(預先插入一行),一張存獎品發放概況,一張存用戶抽獎情況(uin唯一索引),大并發情況下,利用mysql的排他鎖進行并發控制。流程如下:
begin
查詢用戶抽獎次數,加排他鎖
對用戶抽獎次數的更新/插入
鎖行查詢發放情況
獲得抽獎結果(某些獎品發完之后,動態變更概率)
更新發放表
插入中獎記錄
commit
遇到臟讀怎么辦? innodb的master線程在什么情況下fork其他子線程? 數據鏈路層的數據是怎么校驗的,有哪些校驗方式?CRC32
b+樹的查詢時間復雜度是多少,哈希表是多少,為什么數據庫索引用b+樹存儲,而不是哈希表,數據庫索引存儲還有其他數據結構嗎?O(log(n)),O(1)
因為哈希表是散列的,在遇到key>"12"這種查找條件時,不起作用,并且空間復雜度較高。
b+數根據層數決定時間復雜度,數據量多的情況下一般4-5層,然后用二分法查找頁中的數據,時間復雜度遠小于log(n)。
apache是怎么跟php通訊的,sapi是什么使用sapi通訊,sapi是php封裝的對外數據傳遞接口,通常有cgi/fastcgi/cli/apache2handler四種運行模式。
php的垃圾回收機制?垃圾回收是指當php運行狀態結束時,比如遇到了exit/die/致命錯誤/腳本運行結束時,php需要回收運行過程中創建的變量、資源的內存。
ZEND引擎維護了一個棧zval,每個創建的變量和資源都會壓入這個棧中,每個壓入的數組結構都類似:[refcount => int, is_ref => 0|1, value => union, type => string],變量被unset時,ref_count如果變成0,則被回收。
當遇到變量循環引用自身時,使用同步回收算法回收。
jquery的sizzle引擎工作原理http://www.cnblogs.com/xesam/...
seajs的工作原理,如何解決重復加載庫的問題,如何進行資源的同步加載建立映射關系并緩存起來;資源并不能真正同步加載,只是返回一個回調。
memcache跟redis的區別 md5逆向原理先用彩虹字典查找,再嘗試暴力破解。
父類方法是protected,子類重構為private,會發生什么?會發生fatal錯誤,因為繼承的方法或屬性只能維持或放大權限,不能縮小,比如protected重載為public是可行的。
一個網頁從輸入地址回車,到完整展示網頁內容這段時間里,做了哪些工作,越詳細越好。0、瀏覽器本地緩存匹配;
1、本地hosts映射對比;
2、本地dns緩存解析;
3、遠程dns解析獲得服務器ip地址;
4、瀏覽器發送tcp連接請求包(syn);
5、請求包經過傳輸層、網絡層、數據鏈路層封裝通過網卡到達路由器;
6、路由器轉發數據包到所屬運營商服務器;
7、運營商服務器通過尋址最短路徑通過中繼節點到達指定ip地址;
8、服務器端可能存在反向代理或者負載均衡,都是直接轉發請求至上游服務器,當然也可以制定安全防御規則直接丟棄請求包;
9、上游服務器收到連接請求,在自身可用的情況下,返回(syn+ack);
10、瀏覽器校驗ack,再次發送(syn+ack);
11、服務器校驗ack切換連接狀態至established,然后根據請求傳輸數據包;
12、當transform-encoding為chunked時,瀏覽器開始渲染頁面;
13、四次揮手,連接關閉;
14、渲染數據完成。
keep-alive的概念長連接機制,表示keep-alive-timeout時間內,如果連接沒有closed,再次傳輸數據不再需要三次握手了。
linux文件壓縮操作命令,shell腳本等 設計一個中繼服務器,轉發客戶A->客戶B的請求 myisam跟innodb有什么區別 php進程死鎖產生的原因是什么?怎么自動排查與自動恢復? 有class A { public function b($a, $b, $c){}}; 怎么使用["b" => 2, "a" => 1, "c" => 3],對進行A::b進行調用,并順利賦值? php5.2->php7.1的各版本演進歷史,新增特性等? 畫一個tcp三次握手圖文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/23138.html
摘要:先說一下面試時的心態,剛入門的程序員,技術實力不高,又大多不善言談,面試一旦遇到難題,很容易心態失衡驚慌失措語無倫次,最終丟掉了。其實大可不必,心態坦然,是面試必備的一點。 本書的 GitHub 地址:https://github.com/todayqq/PH... 作為一位程序員,面試過多次,也面試過很多人,最近又在找工作,總結一下面試經驗和面試題,希望可以幫到正在找工作的小伙伴們...
摘要:擴展閱讀收集的前端面試題和答案前端開發面試題史上最全的前端面試題匯總及答案前端工程師手冊協議工作原理協議運行機制的概述 本書的 GitHub 地址:https://github.com/todayqq/PH... 對于大公司,很少會有全棧工程師這個崗位,全棧是個花哨的詞,對于現在比較熱門的技術,不論是 Vue 還是 Laravel,只要智商不差,看著文檔,都能寫出一個 CURD 來,...
摘要:前端篇收集的前端面試題和答案前端開發面試題史上最全的前端面試題匯總及答案前端工程師手冊協議工作原理協議運行機制的概述協議篇原理原理解析的工作原理與的區別理解后端篇年的面試總結垃圾回收機制面向對象設計淺談說清楚是什么和的區別索引原理及慢查 前端篇 收集的前端面試題和答案 前端開發面試題 史上最全的web前端面試題匯總及答案 前端工程師手冊 HTTP協議:工作原理 SSL/TLS協議運行...
摘要:本書的地址程序員的簡歷在求職的時候,尤為重要,簡歷就是銷售自己的明信片,一份優秀的簡歷,能為你帶來更多的面試機會。擴展閱讀程序員簡歷應該怎么寫面試時,如何向公司提問 本書的 GitHub 地址:https://github.com/todayqq/PH...程序員的簡歷在求職的時候,尤為重要,簡歷就是銷售自己的明信片,一份優秀的簡歷,能為你帶來更多的面試機會。 我自己寫了不少了簡歷,...
閱讀 3138·2021-11-24 10:24
閱讀 2930·2021-11-11 16:54
閱讀 3066·2021-09-22 15:55
閱讀 2027·2019-08-30 15:44
閱讀 1901·2019-08-29 18:41
閱讀 2761·2019-08-29 13:43
閱讀 3053·2019-08-29 12:51
閱讀 1171·2019-08-26 12:19