熱門文章

      最新文章

      20道必知必會的PHP基礎面試題(附答案)

      發(fā)布時間:2021-06-22 15:26:45

      1、什么是面向對象?主要特征是什么?
      面向對象是程序的一種設計方式,它利于提高程序的重用性,使程序結構更加清晰。

      主要特征:封裝、繼承、多態(tài)。

      2、SESSION 與 COOKIE的區(qū)別是什么,請從協(xié)議,產生的原因與作用說明?
      http無狀態(tài)協(xié)議,不能區(qū)分用戶是否是從同一個網(wǎng)站上來的,同一個用戶請求不同的頁面不能看做是同一個用戶。

      SESSION存儲在服務器端,COOKIE保存在客戶端。Session比較安全,cookie用某些手段可以修改,不安全。Session依賴于cookie進行傳遞。禁用cookie后,session不能正常使用。

      Session的缺點:保存在服務器端,每次讀取都從服務器進行讀取,對服務器有資源消耗。Session保存在服務器端的文件或數(shù)據(jù)庫中,默認保存在文件中,文件路徑由php配置文件的session.save_path指定。Session文件是公有的。

      3、HTTP 狀態(tài)中302、403、 500代碼含義?
      一二三四五原則:(即一:消息系列;二:成功系列;三:重定向系列;四:請求錯誤系列;五:服務器端錯誤系列。)

      302:臨時轉移成功,請求的內容已轉移到新位置
      403:禁止訪問
      500:服務器內部錯誤
      401:代表未授權
      4、請寫出數(shù)據(jù)類型(int char varchar datetime text)的意思;請問 varchar 和 char有什么區(qū)別?
      Int 整數(shù)
      char 定長字符
      Varchar 變長字符
      Datetime 日期時間型
      Text 文本型
      Varchar與char的區(qū)別:

      char是固定長度的字符類型,分配多少空間,就占用多長空間。Varchar是可變長度的字符類型,內容有多大就占用多大的空間,能有效節(jié)省空間。由于varchar類型是可變的,所以在數(shù)據(jù)長度改變的時,服務器要進行額外的操作,所以效率比char類型低。

      5、MyISAM和 InnoDB 的基本區(qū)別?索引結構如何實現(xiàn)?
      MyISAM類型不支持事務,表鎖,易產生碎片,要經常優(yōu)化,讀寫速度較快,適合用于頻繁查詢的應用;

      InnoDB類型支持事務,行鎖,有崩潰恢復能力,讀寫速度比MyISAM慢,適合于插入和更新操作比較多的應用,空間占用大,不支持全文索引等。

      創(chuàng)建索引:alert table tablename add index 索引名 (`字段名`)

      6、isset() 和 empty() 區(qū)別
      isset判斷變量是否存在,可以傳入多個變量,若其中一個變量不存在則返回假;empty判斷變量是否為空為假,只可傳一個變量,如果為空為假則返回真。

      7、請說明 PHP 中傳值與傳引用的區(qū)別。什么時候傳值什么時候傳引用?
      傳值傳遞:函數(shù)范圍內對值的任何改變在函數(shù)外部都會被忽略

      傳引用傳遞:函數(shù)范圍內對值的任何改變在函數(shù)外部也能反映出這些修改

      優(yōu)缺點:傳值傳遞時,php必須復制值。特別是對于大型的字符串和對象來說,這將會是一個代價很大的操作。傳引用傳遞則不需要復制值,對于性能提高很有好處。

      8、在PHP中error_reporting這個函數(shù)有什么作用?
      設置PHP的報錯級別并返回當前級別。

      9、說說你對緩存技術的了解?
      緩存技術是將動態(tài)內容緩存到文件中,在一定時間內訪問動態(tài)頁面直接調用緩存文件,而不必重新訪問數(shù)據(jù)庫。

      10、現(xiàn)在編程中經常采取MVC三層結構,請問MVC分別指哪三層,有什么優(yōu)點?
      MVC三層分別指:業(yè)務模型、視圖、控制器,由控制器層調用模型處理數(shù)據(jù),然后將數(shù)據(jù)映射到視圖層進行顯示

      優(yōu)點是:

      ①可以實現(xiàn)代碼的重用性,避免產生代碼冗余;

      ②M和V的實現(xiàn)代碼分離,從而使同一個程序可以使用不同的表現(xiàn)形式

      11、AJAX的優(yōu)勢是什么?
      ajax是異步傳輸技術,可以通過javascript實現(xiàn),也可以通過JQuery框架實現(xiàn),實現(xiàn)局部刷新,減輕了服務器的壓力,也提高了用戶體驗。

      12、在程序的開發(fā)中,如何提高程序的運行效率?
      優(yōu)化SQL語句,查詢語句中盡量不使用select *,用哪個字段查哪個字段;

      少用子查詢可用表連接代替;

      少用模糊查詢;

      數(shù)據(jù)表中創(chuàng)建索引;

      對程序中經常用到的數(shù)據(jù)生成緩存。

      13、對于大流量的網(wǎng)站,您采用什么樣的方法來解決訪問量問題?
      有效使用緩存,增加緩存命中率
      使用負載均衡
      對靜態(tài)文件使用cdn進行存儲和加速
      想法減少數(shù)據(jù)庫的使用
      查看出現(xiàn)統(tǒng)計的瓶頸在哪里
      反向代理
      14、語句include和require的區(qū)別是什么?為避免多次包含同一文件,可用什么語句代替它們?
      區(qū)別:在失敗的時候:include產生一個warning,而require產生直接產生錯誤中斷require在運行前載入include在運行時載入代替:require_onceinclude_once

      15、foo()和@foo()之間有什么區(qū)別?
      @代表所有warning忽略

      16、簡述php的垃圾收集機制。
      php中的變量存儲在變量容器zval中,zval中除了存儲變量類型和值外,還有is_ref和refcount字段。refcount表示指向變量的元素個數(shù),is_ref表示變量是否有別名。如果refcount為0時,就回收該變量容器。

      如果一個zval的refcount減1之后大于0,它就會進入垃圾緩沖區(qū)。當緩沖區(qū)達到最大值后,回收算法會循環(huán)遍歷zval,判斷其是否為垃圾,并進行釋放處理。

      17、如何實現(xiàn)PHP的安全最大化?
      怎樣避免SQL注入漏洞和XSS跨站腳本攻擊漏洞? 答:基本原則:不對外界展示服務器或程序設計細節(jié)(屏蔽錯誤),不相信任何用戶提交的數(shù)據(jù)(過濾用戶提交)。

      18、echo、print_r、print、var_dump區(qū)別
      echo:語句結構;
      print:是函數(shù),有返回值
      print_r:能打印數(shù)組,對象
      var_dump:能打印對象數(shù)組,并且?guī)?shù)據(jù)類型
      19、寫出smarty模板的特點
      速度快,編譯型,緩存技術,插件機制,強大的表現(xiàn)邏輯

      20、如果需要原樣輸出用戶輸入的內容,在數(shù)據(jù)入庫前,要用哪個函數(shù)處理?
      htmlspecialchars或者htmlentities

      返回頂部
      主站蜘蛛池模板: 精品一区二区三区在线播放| 人妻av无码一区二区三区| 日韩在线观看一区二区三区| 亚洲国产精品一区二区第一页| 成人区人妻精品一区二区不卡| 亚洲国产日韩一区高清在线| 亚洲欧洲一区二区三区| 国产一区二区三区在线观看影院 | 麻豆一区二区三区精品视频 | 日韩精品一区二区三区在线观看l| 国精品无码一区二区三区在线蜜臀| 日韩免费一区二区三区| 国产一区二区三区乱码网站| 精品无码人妻一区二区三区| 色偷偷久久一区二区三区| av无码人妻一区二区三区牛牛| 亚洲高清成人一区二区三区| 人妻体内射精一区二区| 一区二区三区免费看| 国产成人精品一区二区三区| 国产精品乱码一区二区三区| 久久AAAA片一区二区| 国产综合一区二区在线观看| 91久久精一区二区三区大全| 亚洲日韩激情无码一区 | 国产精品成人99一区无码| 国内精品视频一区二区八戒| 国产一国产一区秋霞在线观看| 国产精品一区二区香蕉| 无码人妻精品一区二 | 国产伦精品一区二区三区不卡| 亚洲国产一区二区三区在线观看| 久久久国产精品无码一区二区三区| 亚洲av日韩综合一区二区三区| 国精产品一区一区三区有限在线| 韩国精品福利一区二区三区| av在线亚洲欧洲日产一区二区| 亚洲夜夜欢A∨一区二区三区 | 精品一区中文字幕| 狠狠色成人一区二区三区| 日韩爆乳一区二区无码|