2020 PHP 初級(jí) / 基礎(chǔ)面試題,祝你金三銀四跳槽加薪 (適合基礎(chǔ)不牢固的 PHPer)

1囚似、PHP 語言的一大優(yōu)勢是跨平臺(tái)剩拢,什么是跨平臺(tái)?

PHP 的運(yùn)行環(huán)境最優(yōu)搭配為 Apache+MySQL+PHP饶唤,此運(yùn)行環(huán)境可以在不同操作系統(tǒng)(例如 windows徐伐、Linux 等)上配置,不受操作系統(tǒng)的限制搬素,所以叫跨平臺(tái)

2呵晨、WEB 開發(fā)中數(shù)據(jù)提交方式有幾種?有什么區(qū)別熬尺?百度使用哪種方式摸屠?

Get 與 post 兩種方式

區(qū)別:

(1)url 可見性:get 方式 url 參數(shù)可見,post 不可見

(2)可緩存性:get 方式是可以緩存的粱哼,post 方式不可以緩存季二。

(3)傳輸數(shù)據(jù)大小:get 一般傳輸數(shù)據(jù)大小不超過 2k-4k(根據(jù)瀏覽器不同揭措,限制不一樣胯舷,但相差不大);post 請求傳輸數(shù)據(jù)的大小根據(jù) php.ini 配置文件設(shè)定绊含,也可以無限大桑嘶。

(4)數(shù)據(jù)傳輸上:get 方式通過 url 地址欄拼接參數(shù)進(jìn)行傳輸,post 方式通過 body 體進(jìn)行傳輸躬充。

建議:

1逃顶、get 式安全性較 Post 式要差些包含機(jī)密信息建議用 Post 數(shù)據(jù)提交式;

2充甚、做數(shù)據(jù)查詢建議用 Get 式以政;做數(shù)據(jù)添加、修改或刪除建議用 Post 方式伴找;

3 丶百度使用的 get 方式盈蛮,因?yàn)榭梢詮乃?URL 中看出

3、掌握 PHP 的哪些框架技矮、模板引擎抖誉、系統(tǒng)等

框架:框架有很多殊轴,例如 CI、Yii寸五、Laravel 等等梳凛,咱們學(xué)過的是 thinkphp

模板引擎:也有很多,在課本中有梳杏,咱們學(xué)過的是 smarty

系統(tǒng):有很多韧拒,例如:康盛的產(chǎn)品(uchome、supesite十性、discuzX 等)叛溢,帝國系統(tǒng)、DEDE(織夢)劲适、ecshop 等楷掉,咱們學(xué)過的是 DEDECMS、Ecshop

4霞势、說一下你所掌握的網(wǎng)頁前端技術(shù)有哪些烹植?

熟練掌握 DIV+CSS 網(wǎng)頁布局,JavaScript愕贡,jQuery 框架草雕、photoshop 圖片處理

5、AJAX 的優(yōu)勢是什么固以?

ajax 是異步傳輸技術(shù)墩虹,可以通過 javascript 實(shí)現(xiàn),也可以通過 JQuery 框架實(shí)現(xiàn)憨琳,實(shí)現(xiàn)局部刷新诫钓,減輕了服務(wù)器的壓力,也提高了用戶體驗(yàn)篙螟。

6菌湃、安全對一套程序來說至關(guān)重要,請說說在開發(fā)中應(yīng)該注意哪些安全機(jī)制遍略?

(1)使用驗(yàn)證碼防止注冊機(jī)灌水慢味。

(2)使用預(yù)處理,綁定參數(shù)墅冷,參數(shù)過濾轉(zhuǎn)義 防止 sql 注入

(3)使用 token 防止遠(yuǎn)程提交,使用 token 驗(yàn)證登錄狀態(tài)或油。

7寞忿、在程序的開發(fā)中,如何提高程序的運(yùn)行效率顶岸?

(1)優(yōu)化 SQL 語句腔彰,查詢語句中盡量不使用 select *叫编,用哪個(gè)字段查哪個(gè)字段;少用子查詢可用表連接代替霹抛;少用模糊查詢搓逾。

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

(3)對程序中經(jīng)常用到的數(shù)據(jù)生成緩存(比如使用 redis 緩存數(shù)據(jù)杯拐,比如使用 ob 進(jìn)行動(dòng)態(tài)頁面靜態(tài)化等等)霞篡。

(4)對 mysql 做主從復(fù)制,讀寫分離端逼。(提高 mysq 執(zhí)行效率和查詢速度)

(5)使用 nginx 做負(fù)載均衡朗兵。(將訪問壓力平均分配到多態(tài)服務(wù)器)

8、PHP 可否與其它的數(shù)據(jù)庫搭配使用顶滩?

PHP 與 MYSQL 數(shù)據(jù)庫是最優(yōu)搭配余掖,當(dāng)然 PHP 也可以去其它的數(shù)據(jù)庫搭配使用,例如 PostgreSql礁鲁,SqlServer盐欺,Oracle,SqlLite 等仅醇。

9冗美、現(xiàn)在編程中經(jīng)常采取 MVC 三層結(jié)構(gòu),請問 MVC 分別指哪三層着憨,有什么優(yōu)點(diǎn)墩衙?

MVC 三層分別指:業(yè)務(wù)模型、視圖甲抖、控制器漆改,由控制器層調(diào)用模型處理數(shù)據(jù),然后將數(shù)據(jù)映射到視圖層進(jìn)行顯示准谚。

優(yōu)點(diǎn)是:

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

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

10樊破、對 json 數(shù)據(jù)格式的理解?

JSON (JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式唆铐,json 數(shù)據(jù)格式固定哲戚,可以被多種語言用作數(shù)據(jù)的傳遞。

PHP 中處理 json 格式的函數(shù)為 json_decode (string $json [, bool $assoc] ) 艾岂,接受一個(gè) JSON 格式的字符串并且把它轉(zhuǎn)換為 PHP 變量顺少,參數(shù) json 待解碼的 json string 格式的字符串。assoc 當(dāng)該參數(shù)為 TRUE 時(shí),將返回 array 而非 object脆炎;

Json_encode:將 PHP 變量轉(zhuǎn)換成 json 格式梅猿。

11、Print秒裕、echo袱蚓、print_r 有什么區(qū)別?

(1) echo 和 print 都可以做輸出几蜻,不同的是喇潘,echo 不是函數(shù),沒有返回值入蛆,而 print 是一個(gè)函數(shù)有返回值响蓉,所以相對而言如果只是輸出 echo 會(huì)更快,而 print_r 通常用于打印變量的相關(guān)信息哨毁,通常在調(diào)試中使用枫甲。

(2) print 是打印字符串

(3)print_r 則是打印復(fù)合類型 如數(shù)組 對象

12、SESSION 與 COOKIE 的區(qū)別扼褪?

(1)存儲(chǔ)位置:session 存儲(chǔ)于服務(wù)器想幻,cookie 存儲(chǔ)于瀏覽器

(2)安全性:session 安全性比 cookie 高

(3)session 為‘會(huì)話服務(wù)’,在使用時(shí)需要開啟服務(wù)话浇,cookie 不需要開啟脏毯,可以直接用

13、PHP 處理數(shù)組的常用函數(shù)幔崖?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

(1)array () 創(chuàng)建數(shù)組

(2)in_array () 判斷元素是否在數(shù)組中

(3)count () 返回?cái)?shù)組中元素的數(shù)目

(4)array_merge () 將多個(gè)數(shù)組合并成一個(gè)數(shù)組

(5)array_diff () 比較兩個(gè)或兩個(gè)以上數(shù)組的差異

(6)array_intersect () 獲取兩個(gè)或兩個(gè)數(shù)組以上的交集

(7)array_keys () 獲取數(shù)組的 key 列表

(8)array_values () 獲取數(shù)組的值列表

(9)array_unique () 刪除數(shù)組中的重復(fù)值

(10)array_push () 將一個(gè)或多個(gè)元素插入數(shù)組的末尾(入棧)

(11)array_pop () 彈出并返回 array 數(shù)組的最后一個(gè)單元(出棧)

(12)array_walk () 使用用戶自定義函數(shù)對數(shù)組中的每個(gè)元素做回調(diào)處理

14食店、PHP 處理字符串的常用函數(shù)?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

(1)trim () 移除字符串兩側(cè)的空白字符和其他字符赏寇;

(2)strlen () 獲取字符串的長度

(3)mb_strlen () 獲取字符串長度(可指定字符編碼吉嫩,對中文字符串計(jì)算長度)

(4)substr () 返回字符串的一部分;

(5)str_replace () 子字符串替換

(6)str_repeat () 重復(fù)一個(gè)字符串

(7)is_string () 檢測變量是否是字符串嗅定;

(8)str_shuffle () 隨機(jī)打亂一個(gè)字符串

(9)sprintf () 返回根據(jù)格式化字符串生成的字符串(通常用于獲取分表后的數(shù)據(jù)表名)

(10)strstr () 查找字符串的首次出現(xiàn)

(11)addslashes 使用反斜線引用字符串

15自娩、PHP 處理時(shí)間的常用函數(shù)?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

(1)date () 格式化一個(gè)本地時(shí)間/日期渠退。

(2)getdate () 取得日期/時(shí)間信息忙迁。

(3)date_default_timezone_set () 設(shè)定默認(rèn)時(shí)區(qū)。

(4)date_default_timezone_get () 返回默認(rèn)時(shí)區(qū)碎乃。

(5)mktime () 返回一個(gè)日期的 Unix 時(shí)間戳姊扔。

(6)strtotime () 將任何字符串的日期時(shí)間描述解析為 Unix 時(shí)間戳

(7)strftime () 根據(jù)區(qū)域設(shè)置格式化本地時(shí)間/日期

16、PHP 處理數(shù)據(jù)庫的常用函數(shù)梅誓?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

請參照 php 手冊旱眯,認(rèn)真查看,此項(xiàng)非常重要

17、PHP 操作文件的常用函數(shù)删豺?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

(1)打開文件 fopen ()

(2)讀取文件 fgets () ; 注:file_get_contents () 也是讀取文件

(3)寫入文件 fwrite () ; 注:file_put_contents () 同樣可以寫入文件

(4)關(guān)閉文件句柄 fclose ()

(5)移動(dòng) / 重命名文件 rename ()

(6)復(fù)制文件 copy ()

(7)創(chuàng)建文件 vim 或 touch

(8)刪除文件 unlink ()

(9)獲取文件上次訪問的時(shí)間 fileatime ()

(10)獲取文件上次修改的時(shí)間 filemtime ()

(11)獲取文件大小 filesize ()

(12)獲取文件類型 filetype ()

(13)獲取文件詳細(xì)信息 state ()

(14)判斷是否是目錄 is_dir ()

18、PHP 操作目錄(文件夾)的常用函數(shù)愧怜?(重點(diǎn)看函數(shù)的‘參數(shù)’和‘返回值’)

(1)打開目錄 opendir ()

(2)讀取目錄 readdir ()

(3)刪除目錄 rmdir ()

(4)關(guān)閉目錄句柄 closedir ()

(5)創(chuàng)建目錄 mkdir ()

(6)返回路徑中的目錄部分 dirname ()

(7)取得當(dāng)前工作目錄 getcwd ()

(8)列出指定路徑中的文件和目錄 scandir ()

很多人在剛接觸這個(gè)行業(yè)的時(shí)候或者是在遇到瓶頸期的時(shí)候呀页,總會(huì)遇到一些問題,比如學(xué)了一段時(shí)間感覺沒有方向感拥坛,不知道該從那里入手去學(xué)習(xí)蓬蝶,對此我整理了一些資料,需要的可以免費(fèi)分享給大家(點(diǎn)擊此處加入php高級(jí)交流群一起學(xué)習(xí)交流猜惋,11年架構(gòu)師帶你解讀年薪50萬面試通關(guān)秘籍丸氛。)

更多學(xué)習(xí)內(nèi)容請?jiān)L問:

騰訊T3-T4標(biāo)準(zhǔn)精品PHP架構(gòu)師教程目錄大全,只要你看完保證薪資上升一個(gè)臺(tái)階(持續(xù)更新)

推薦視頻:

PHP高級(jí)開發(fā)工程師簡歷打造著摔,祝你金三銀四跳槽加薪

https://www.bilibili.com/video/BV1S

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缓窜,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子谍咆,更是在濱河造成了極大的恐慌禾锤,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件摹察,死亡現(xiàn)場離奇詭異恩掷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)供嚎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門黄娘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人克滴,你說我怎么就攤上這事逼争。” “怎么了偿曙?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵氮凝,是天一觀的道長。 經(jīng)常有香客問我望忆,道長罩阵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任启摄,我火速辦了婚禮稿壁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘歉备。我一直安慰自己傅是,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著喧笔,像睡著了一般帽驯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上书闸,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天尼变,我揣著相機(jī)與錄音,去河邊找鬼浆劲。 笑死嫌术,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的牌借。 我是一名探鬼主播度气,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼磷籍!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起拟烫,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎公条,沒想到半個(gè)月后传黄,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體苍日,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡固翰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年种吸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尉剩。...
    茶點(diǎn)故事閱讀 38,039評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情眨八,我是刑警寧澤段誊,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站栈拖,受9級(jí)特大地震影響枕扫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜辱魁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望诗鸭。 院中可真熱鬧染簇,春花似錦、人聲如沸强岸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蝌箍。三九已至青灼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間妓盲,已是汗流浹背杂拨。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留悯衬,地道東北人弹沽。 一個(gè)月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像筋粗,于是被迫代替她去往敵國和親策橘。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評論 2 345

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

  • PHP常用函數(shù)大全 usleep() 函數(shù)延遲代碼執(zhí)行若干微秒娜亿。 unpack() 函數(shù)從二進(jìn)制字符串對數(shù)據(jù)進(jìn)行解...
    上街買菜丶迷倒老太閱讀 1,352評論 0 20
  • 總結(jié)了一些開發(fā)中常用的函數(shù): usleep() //函數(shù)延遲代碼執(zhí)行若干微秒丽已。 unpack() //函數(shù)從二進(jìn)制...
    ADL2022閱讀 454評論 0 3
  • 概要 64學(xué)時(shí) 3.5學(xué)分 章節(jié)安排 電子商務(wù)網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,095評論 0 3
  • 1、PHP語言的一大優(yōu)勢是跨平臺(tái)买决,什么是跨平臺(tái)沛婴?一吼畏、PHP基礎(chǔ): PHP的運(yùn)行環(huán)境最優(yōu)搭配為Apache+MySQ...
    __書山有路__閱讀 1,477評論 0 15
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,212評論 0 4