php面試題及答案_第1頁
php面試題及答案_第2頁
php面試題及答案_第3頁
php面試題及答案_第4頁
php面試題及答案_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

php面試題及答案

php面試題及答案(一)

1.echocount(“abcd”);輸出多少?

intcount(mixedvar)

返回單元數(shù)目,通常是一個(gè)array,任何其他類型都只有一個(gè)單元,有一個(gè)例外,假如var是null結(jié)果是0

2.

$a=$b=$c=0;

$a=$b$c;

運(yùn)行以上代碼后$a$b$c分別是?

$a=false

$c=0

$b=0

3.PHP打印出前一天的時(shí)間,格式是2023-12-2922:21:21

echodate(Y-m-dH:i:s,strtotime(-1day));

strtotime將任何英文文本的日期時(shí)間解析成時(shí)間戳

4.請(qǐng)用php的heredoc語法格式輸出:helloworld!

echo

helloworld!

EOT;

5.$string=abcdefg,那么$string{4}的值是?

$string{4}=e

由于PHP是弱類型語言,可以將字符串“視為數(shù)組”,當(dāng)做字符集合對(duì)待,字符串中的字符可以在字符串之后用花括號(hào)指定所要字符從零開頭的偏移量來訪問和修改。

6.簡(jiǎn)述echo(),print(),print_r()的區(qū)分。

echo,print是PHP語言構(gòu)造,print_r是函數(shù),語言構(gòu)造沒有返回值,函數(shù)可以有返回值(即便沒有用)

print只能打印出簡(jiǎn)潔類型變量的值(如int,string)

print_r可以打印出簡(jiǎn)單類型變量的值(如數(shù)組,對(duì)象)

php面試題及答案(二)

1.用PHP寫出顯示客戶端IP與效勞器IP的代碼。

客戶端:$_SERVER[REMOTE_ADDR]

效勞器:$_SERVER[SERVER_ADDR]

2、用正則表達(dá)式推斷$a是否是一個(gè)以半角逗號(hào)分隔的多個(gè)手機(jī)號(hào)碼組成的字符串,是輸出yes

$phone18588421409

$pattern=/^(1[34568]\d{9},)+(1[34568]\d{9})?$/;

if(preg_match_all($pattern,$phone,$out)){

echoyes;

}else{

echono;

}

echo

;

print_r($out);

3、解釋MVC,介紹幾種目前比擬流行的MVC框架

由模型(model),視圖(view),掌握器(controller)完成的”應(yīng)用程序

MVC模式的目的就是實(shí)現(xiàn)Web系統(tǒng)的功能分工,它強(qiáng)制性地把應(yīng)用程序的輸入、處理和輸出分開,可以各自處理自己的任務(wù),是一種分層的概念。Model層實(shí)現(xiàn)系統(tǒng)中的業(yè)務(wù)規(guī)律,View層用于與用戶的交互,Controller層是Model和View之間溝通的橋梁。

Symfony:是為開發(fā)大型web預(yù)備的,學(xué)習(xí)曲線比擬長(zhǎng)。

Laravel:簡(jiǎn)潔、優(yōu)雅。

php面試題及答案(三)

一、描述一下大流量高并發(fā)網(wǎng)站的解決方案

1)LVS或nginx負(fù)載均衡器,通過負(fù)載均衡把壓力分擔(dān)到多臺(tái)效勞器.

2)squid緩存或nginxwebcache緩存

3)web效勞器選型(nginx代替apache)

4)頁面靜態(tài)化(smarty或框架),數(shù)據(jù)緩存(memcacheRedis)

5)memcache

6)sql語句肯定要留意索引使用

7)主從數(shù)據(jù)庫

8)分庫分表或分區(qū)

主要從以下幾個(gè)方面答復(fù):

1、硬件

1)垂直拓展:買更好的效勞器。一般不建議這么做,由于單個(gè)效勞器都有上限

2)水平拓展:多買幾臺(tái)效勞器,利用負(fù)載均衡器(LVS、F5),將壓力分擔(dān)到不同效勞器上。

2、數(shù)據(jù)庫

a)數(shù)據(jù)庫優(yōu)化:1、分表和分區(qū)2、主從數(shù)據(jù)庫

b)數(shù)據(jù)庫的選型:可以考慮將apache換成nginx

c)SQl語句優(yōu)化

3、緩存

a)數(shù)據(jù)緩存:使用memcache

B)頁面靜態(tài)化:框架的頁面靜態(tài)化、smarty

C)使用CDN

參考答案:

1、硬件

購(gòu)置更好的效勞器,這種是縱向擴(kuò)展,但是不太推舉。購(gòu)置更多的效勞器,利用LVS或者F5搭建效勞器集群。從而提高整個(gè)網(wǎng)站的計(jì)算速度。

2、web效勞器

由于Apache的并發(fā)處理力量有限,所以可以考慮使用Nginx。

3、數(shù)據(jù)庫

Mysql要結(jié)合NoSQL使用,由于單個(gè)數(shù)據(jù)庫力量有限,所以要搭建主從數(shù)據(jù)庫。

4、緩存

a)為了減小數(shù)據(jù)庫的壓力,考慮使用Memcache或Redis做緩存。b)把網(wǎng)站的絕大多數(shù)頁面進(jìn)展頁面靜態(tài)化。(phpcms)

c)把靜態(tài)資源放到CDN上。

5、制止外部的盜鏈

6、掌握大文件的下載

二、如何防SQL注入

//表單盡量用post提交,核心用戶驗(yàn)證都走post,避開get

1、表單盡量用post,表單推斷掌握走get,由于get比post速度快

2、$_SERVER[HTTP_REFERER]推斷提交者的源頭,只能本站提交。

3、使用addslashes轉(zhuǎn)義用戶提交的數(shù)據(jù)

4、效勞器本身的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論