PHP基礎面試題整理

小云云
發布: 2023-03-21 21:10:02
原創
3937 人瀏覽過

身為php工程師在面試的時候必定會接觸一些面試題,本文主要和大家分享一些PHP基礎面試題整理,希望能幫助到大家。

  1. 雙引號單引號區別

  • #雙引號解釋變量,單引號不解釋變數

  • 雙引號裡插入單引號,其中單引號裡如果有變數的話,變數解釋

  • 雙引號的變數名稱後面必須要有一個非數字、字母、底線的特殊字符,或用{}講變數括起來,否則會將變數名稱後面的部分當做一個整體,引起語法錯誤

  • 能使單引號字元盡量使用單引號,單引號的效率比雙引號高

GET和POST提交方式的差異

  • GET產生一個TCP封包; POST產生兩個TCP封包;
    對於GET方式的請求,瀏覽器會把http header和data一併發送出去,伺服器回應200(返回資料)
    對於POST,瀏覽器先發送header,伺服器回應100 continue,瀏覽器再發送data,伺服器回應200 ok(回傳資料)。

  • GET在瀏覽器回退時是無害的,而POST會再次提交請求

  • GET請求會被瀏覽器主動cache ,而POST不會,除非手動設定

  • GET請求參數會被完整地保留在瀏覽器歷史記錄裡,而POST中的參數不會被保留

  • GET請求只能進行url編碼,而POST支援多種編碼方式

  • GET比POST更不安全,因為參數直接暴露在URL上,所以不能用來傳遞敏感資訊

如何取得客戶端的真實ip
$_SERVER['REMOTE_ADDR']或getenv('REMOTE_ADDR')

include和require的區別
require是無條件包含,也就是如果一個流程裡加入require,無論條件成立與否都會先執行require,當檔案不存在或無法開啟的時候,會提示錯誤,並且會終止程式執行
include有回傳值,而require沒有(可能因為如此require的速度比include快),如果被包含的檔案不存在的化,那麼會提示一個錯誤,但是程式會繼續執行下去

注意:包含檔案不存在或語法錯誤的時候require是致命的,而include不是

AJAX的優勢是什麼
ajax是異步傳輸技術,可以透過javascript實現,也可以透過JQuery框架實現,實現局部刷新,減輕了伺服器的壓力,也提高了使用者體驗

在程式的開發中,如何提升程式的運作效率

  • 優化SQL語句,查詢語句中盡量不使用select *,用哪個字段查哪個字段;

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

  • 少用模糊查詢;

  • 在資料表中建立索引;

  • #對程式中常用到的資料產生快取;

#SESSION與COOKIE的差異

  • 儲存位置:session儲存在伺服器,cookie儲存在瀏覽器

  • 安全性: session安全性高於cookie

isset和empty的區別

  • isset()函數一般用來偵測變數是否設定
    若變數不存在則回傳FALSE 
    若變數存在且其值為NULL,也傳回FALSE 
    若變數存在且值不為NULL,則傳回TURE

  • empty()函數是檢查變數是否為空
    若變數不存在則回傳TRUE 
    若變數存在且其值為""、0、"0"、NULL、 、FALSE、array()、var $var; 以及沒有任何屬性的對象,則返回TURE 
    若變數存在且值不為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則傳回FALSE

資料庫三範式

  • 第一範式:1NF是對屬性的原子性約束,要求屬性具有原子性,不可再分解;

  • 第二範式:2NF是對記錄的惟一性約束,要求記錄有惟一標識,即實體的惟一性;

  • 第三範式:3NF是對字段冗餘性的約束,即任何字段不能由其他字段派生出來,它要求字段沒有冗餘。

主鍵、外鍵和索引的區別

  • #定義
    主鍵--唯一標識一筆記錄,不能有重複的,不允許為空
    外鍵--表的外鍵是另一表的主鍵, 外鍵可以有重複的, 可以是空值
    索引--該欄位沒有重複值,但可以有一個空值

  • 作用
    主鍵--用來保證資料完整性
    外鍵--用來和其他表建立聯繫用的
    索引--是提高查詢排序的速度

  • 個數
    主鍵--主鍵只能有一個
    外鍵--一個表格可以有多個外鍵
    索引--一個表可以有多個唯一索引

堆疊和堆疊的區別
堆疊是編譯期間就分配好的記憶體空間,因此你的程式碼中必須就棧的大小有明確的定義; 
堆是程式運作期間動態分配的記憶體空間,你可以根據程式的運作情況來決定要分配的堆記憶體的大小。

相關推薦:

HTML基礎面試題總結

#php面試題PHP基礎面試題

幾道php基礎面試題_PHP教學

以上是PHP基礎面試題整理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!