久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

專欄中心

EEPW首頁 > 專欄 > PHP高級開發工程師面試題及答案匯總

PHP高級開發工程師面試題及答案匯總

發布人:only1 時間:2020-08-25 來源:工程師 發布文章

今天扣丁學堂小編給大家整理一下關于PHP培訓之高級面試題整理及答案匯總,下面我們一起來看一下吧。  

1.寫出一個能創建多級目錄的PHP函數  

/**  

*創建多級目錄  

*@param$pathstring要創建的目錄  

 

*@param$modeint創建目錄的模式,在windows下可忽略  

*/  

functioncreate_dir($path,$mode=0777)  

{  

if(is_dir($path)){  

#如果目錄已經存在,則不創建  

echo"該目錄已經存在";  

}else{  

#不存在,創建  

if(mkdir($path,$mode,true)){  

echo"創建目錄成功";  

}else{  

echo"創建目錄失敗";  

}  

}  

}  

?>  

2.寫出smarty模板的特點?  

速度快,編譯型,緩存技術,插件機制,強大的表現邏輯  

3.打開php.ini中的safe_mode,會影響哪些函數?至少說出6個  

safe_mode,php安全模式,它提供一個基本安全的共享環境,在一個有多個用戶賬戶存在的php開發的web服務器上。當安全模式打開的時候,一些函數將被完全的禁止,而另一些函數的功能將會受到限制,如:chdir,move_uploaded_file,chgrp,parse_ini_file,chown,rmdir,copy,rename,fopen,require,mkdir,unlink等。  

注意,在php5.3以上版本,safe_mode被棄用,在php5.4以上版本,則將此特性完全去除了。  

4.抓取遠程圖片到本地,你會用什么函數?  

file_get_contents或者curl  

5.PHP的垃圾收集機制是怎樣的  

PHP可以自動進行內存管理,清除不再需要的對象。  

PHP使用了引用計數(referencecounting)這種單純的垃圾回收(garbagecollection)機制。每個對象都內含一個引用計數器,每個reference連接到對象,計數器加1。當reference離開生存空間或被設為NULL,計數器減1。當某個對象的引用計數器為零時,PHP知道你將不再需要使用這個對象,釋放其所占的內存空間。  

6.請寫一段PHP代碼,確保多個進程同時寫入同一個文件成功?核心思路:加鎖  

$fp=fopen("lock.txt","w+");  

if(flock($fp,LOCK_EX)){  

//獲得寫鎖,寫數據  

fwrite($fp,"writesomething");  

//解除鎖定  

flock($fp,LOCK_UN);  

}else{  

echo"fileislocking...";  

}  

fclose($fp);  

?>  

7.寫一個函數,盡可能高效的,從一個標準url里取出文件的擴展名?  

//方案一  

functiongetExt1($url){  

$arr=parse_url($url);  

//Array([scheme]=>http[host]=>www.codingke.com[path]=>/abc/de/fg.php[query]=>id=1)  

$file=basename($arr['path']);  

$ext=explode('.',$file);  

return$ext[count($ext)-1];  

}  

//方案二  

functiongetExt2($url){  

$url=basename($url);  

$pos1=strpos($url,'.');  

$pos2=strpos($url,'?');  

if(strstr($url,'?')){  

returnsubstr($url,$pos1+1,$pos2-$pos1-1);  

}else{  

returnsubstr($url,$pos1);  

}  

}  

$path="http://www.codingke.com/abc/de/fg.php?id=1";  

echogetExt1($path);  

echo"  

";  

echogetExt2($path);  

?>  

相關題目:使用五種以上方式獲取一個文件的擴展名,要求:dir/upload.image.jpg,找出.jpg或者jpg,必須使用PHP自帶的處理函數進行處理,方法不能明顯重復,可以封裝成函數,比如get_ext1(filename),getext2(file_name)  

8.寫一個函數,能夠遍歷一個文件夾下的所有文件和子文件夾。  

functionmy_scandir($dir){  

$files=array();  

if(is_dir($dir)){  

if($handle=opendir($dir)){  

while(($flie=readdir($handle))!==false){  

if($flie!="."&&$file!=".."){  

if(is_dir($dir."/".$file)){  

$files[$file]=my_scandir($dir."/".$file);  

}else{  

$files[]=$dir."/".$file;  

}  

}  

}  

closedir($handle);  

return$files;  

}  

}  

}  

?>  

[!!!]9.簡述論壇中無限分類的實現原理。(新浪)  

創建類別表如下:  

CREATETABLEcategory(  

cat_idsmallintunsignednotnullauto_incrementprimarykeycomment'類別ID',  

cat_nameVARCHAR(30)NOTNULLDEFAULT''COMMENT'類別名稱',  

parent_idSMALLINTUNSIGNEDNOTNULLDEFAULT0COMMENT'類別父ID'  

)engine=MyISAMcharset=utf8;  

編寫一個函數,遞歸遍歷,實現無限分類  

functiontree($arr,$pid=0,$level=0){  

static$list=array();  

foreach($arras$v){  

//如果是頂級分類,則將其存到$list中,并以此節點為根節點,遍歷其子節點  

if($v['parent_id']==$pid){  

$v['level']=$level;  

$list[]=$v;  

tree($arr,$v['cat_id'],$level+1);  

}  

}  

return$list;  

}  

?>  

10.寫一個函數,算出兩個文件的相對路徑,如a=′/a/b/c/d/e.php′;b='/a/b/12/34/c.php';計算出b相對于a的相對路徑應該是../../c/d(新浪)  

functionreleative_path($path1,$path2){  

$arr1=explode("/",dirname($path1));  

$arr2=explode("/",dirname($path2));  

for($i=0,$len=count($arr2);$i<$len;$i++){  

if($arr1[$i]!=$arr2[$i]){  

break;  

}  

}  

//不在同一個根目錄下  

if($i==1){  

$return_path=array();  

}  

//在同一個根目錄下  

if($i!=1&&$i<$len){  

$return_path=array_fill(0,$len-$i,"..");  

}  

//在同一個目錄下  

if($i==$len){  

$return_path=array('./');  

}  

$return_path=array_merge($return_path,array_slice($arr1,$i));  

returnimplode('/',$return_path);  

}  

$a='/a/b/c/d/e.php';  

$b='/a/b/12/34/c.php';  

$c='/e/b/c/d/f.php';  

$d='/a/b/c/d/g.php';  

echoreleative_path($a,$b);//結果是../../c/d  

echo"  

";  

echoreleative_path($a,$c);//結果是a/b/c/d  

echo"  

";  

echoreleative_path($a,$d);//結果是./  

echo"  

";  

?>  

11.mysql_fetch_row()和mysql_fetch_array()有什么分別?  

mysql_fetch_row()把數據庫的一列儲存在一個以零為基數的數組中,第一欄在數組的索引0,第二欄在索引1,依此類推。  

mysql_fetch_assoc()把數據庫的一列儲存在一個關聯數組中,數組的索引就是字段名稱,例如我的數據庫查詢送回“first_name”、“last_name”、“email”三個字段,數組的索引便是“first_name”、“last_name”和“email”。  

mysql_fetch_array()可以同時送回mysql_fetch_row()和mysql_fetch_assoc()的值。  

12.有一個網頁地址,比如:http://www.codingke.com/php/,如何得到它的內容?  

方法1(對于PHP5及更高版本):  

$readcontents=fopen("http://www.codingke.com/php/","rb");  

$contents=stream_get_contents($readcontents);  

fclose($readcontents);  

echo$contents;  

方法2:  

echofile_get_contents("http://www.codingke.com/php/");  

13.談談對mvc的認識  

由模型(model),視圖(view),控制器(controller)完成的應用程序。  

model層負責提供數據,和數據庫有關的操作都交給模型層來處理,view層則提供交互的界面,并輸出數據,而controller層則負責接收請求,并分發給相應的model來處理,然后調用view層來顯示。  

14.WhatdoestheGDlibrarydo?  

GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。在網站上GD庫通常用來生成縮略圖或者用來對圖片加水印或者對網站數據生成報表。自從PHP4.3.0版本后GD便內建在PHP系統中。  

15.Whatfunctioncanyouusetoopenafileforreadingandwriting?  

A.fget();  

B.file_open();  

C.fopen();  

D.open_file();  

答案:C  

fget()這不是一個PHP函數,會引致執行錯誤。  

file_open()這不是一個PHP函數,會引致執行錯誤。  

fopen()這是正確答案,fopen()可以用來開啟檔案以便讀寫。  

open_file()這不是一個PHP函數,會引致執行錯誤。  

16.Smarty的原理  

smarty是一個模板引擎,使用smarty主要是為了實現邏輯和外在內容的分離,如果不使用模板的話,通常的做法就是php代碼和html代碼混編。使用了模板之后,則可以將業務邏輯都放到php文件中,而負責顯示內容的模板則放到html文件中。  

Smarty在執行display方法的時候,讀取模板文件,并進行數據替換,生成編譯文件,之后每次訪問都會直接訪問編譯文件,讀取編譯文件省去了讀取模板文件,和字符串替換的時間,所以可以更快,編譯文件里時間戳記錄模板文件修改時間,如果模板被修改過就可以檢測到,然后重新編譯(編譯是把靜態內容保存起來,動態內容根據傳入的參數不同而不同)。  

如果啟用了緩存,則會根據編譯文件生成緩存文件,在訪問的時候如果有緩存文件并且緩存文件沒有過期,則直接訪問緩存文件。  

相關題目1:能夠使HTML和PHP分離開使用的模板  

smarty,phplib等  

相關題目2:您是否用過模板引擎?如果有您用的模板引擎的名字是?  

Smarty  

17.PHP如何實現頁面跳轉  

方法一:php函數跳轉,缺點,header頭之前不能有輸出,跳轉后的程序繼續執行,可用exit中斷執行后面的程序。  

header("Location:****");//直接跳轉  

header("refresh:3;url=http://www.codingke.com/");//三秒后跳轉  

方法二:利用meta  

echo"";  

18.PHP可以和sqlserver/oracle等數據庫連接嗎?  

可以  

19.使用哪些工具進行版本控制?  

SVN或者CVS  

相關題目:您是否用過版本控制軟件?如果有您用的版本控制軟件的名字是?  

TortoiseSVN-1.2.6  

20.寫出一個正則表達式,過慮網頁上的所有JS/VBS腳本(即把script標記及其內容都去掉):  

過濾javascript腳本參考:  

header("content-type:text/html;charset=utf-8");  

$script="以下內容不顯示:";  

$pattern='/]*?>.*?/si';  

echopreg_replace($pattern,"腳本內容",$script);//以下內容不顯示:腳本內容  

?>  

21.Givenalineoftext$string,howwouldyouwritearegularexpressiontostripalltheHTMLtagsfromit?  

方案一,使用PHP內建函數strip_tags()除去HTML標簽  

方案二,自定義函數,如下:  

header("content-type:text/html;charset=utf-8");  

functionstrip_html_tags($str){  

$pattern='/<("[^"]*"|\'[^\']\*\'|[^>"\'])*>/';  

returnpreg_replace($pattern,'',$str);  

}  

//實例  

$html='  

ddddd  

';  

echostrip_html_tags($html);  

echo"  

";  

$html='  

bb  

aaa  

';  

echostrip_html_tags($html);  

?>  

22.請寫一個函數驗證電子郵件的格式是否正確(要求使用正則)  

preg_match('/^[\w\-\.]+@[\w\-]+(\.\w+)+$/',$email);  

23.請對POSIX風格和兼容Perl風格兩種正則表達式的主要函數進行類比說明  

主要區別有以下三種:  

preg_replace()里面的正則可以寫成型如:"/.xxx/"而ereg_replace()里面的正則需寫成型如"xxx"  

preg_replace()能操作數組,而ereg_replace()不可以  

在逆向引用用preg_replace()可使用0-99個,而ereg_replace()最多為9個  

使用Perl兼容正則表達式語法的preg_match()函數通常是比ereg()更快的替代方案。  

24.請寫出并說明如何在命令行下運行PHP腳本(寫出兩種方式)同時向PHP腳本傳遞參數?(騰訊)  

首先進入php安裝目錄  

php-fd:/wamp/www/1.php其中-f參數指定要執行的php文件  

php-rphpinfo();其中-r表示直接執行php代碼,無需寫開始結束標記  

25.使用正則表達式提取一段標識語言(html或xml)代碼段中指定標簽的指定屬性值(需考慮屬性值對不規則的情況,如大小寫不敏感,屬性名值與等號間有空格等)。此處假設需提取test標簽的attr屬性值,請自行構建包含該標簽的串(騰訊)  

編寫如下函數:  

header("content-type:text/html;charset=utf-8");  

functiongetAttrValue($str,$tagName,$attrName){  

$pattern1="/<".$tagName."(\\s+\\w+\s*=\\s*([\\'\\\"]?)([^\\'\\\"]*)(\\2))*\\s+".$attrName."\\s*=\\s*([\\'\\\"]?)([^\\'\\\"]*)(\\5)(\\s+\\w+\\s*=\\s*([\\'\\\"]?)([^\\'\\\"]*)(\\9))*\\s*>/i";  

$arr=array();  

$re=preg_match($pattern1,$str,$arr);  

if($re){  

echo"  

\$arr[6]={$arr[6]}";  

}else{  

echo"  

沒找到。";  

}  

}  

//示例  

$str1="";  

getAttrValue($str1,"test","attr");//找test標簽中attr屬性的值,結果為ddd  

$str2="";  

getAttrValue($str2,"test2","t1");//找test2標簽中t1屬性的值,結果為t1value  

?>  

26.Whatdoesthefollowingcodedo?Explainwhat'sgoingonthere.date=′08/26/2003′;printeregreplace(“([0?9]+)/([0?9]+)/([0?9]+)”,2/1/3,date);(Yahoo)  

這是把一個日期從MM/DD/YYYY的格式轉為DD/MM/YYYY格式。  

輸出26/08/2003  

27.Whatfunctionwouldyouusetoredirectthebrowsertoanewpage?  

A.redir()  

B.header()  

C.location()  

D.redirect()  

答案:B  

redir()這不是一個PHP函數,會引致執行錯誤。  

header()這個是正確答案,header()函數發送頭信息,可以用來使瀏覽器轉向到另一個頁面,例如:header("Location:http://www.search-this.com/")。  

location()這不是一個PHP函數,會引致執行錯誤。  

redirect()這不是一個PHP函數,會引致執行錯誤。  

28.Whenturnedon____________will_________yourscriptwithdifferentvariablesfromHTMLformsandcookies.  

A.show_errors,enable  

B.show_errors,show  

C.register_globals,enhance  

D.register_globals,inject  

答案:C  

29.一個函數的參數不能是對變量的引用,除非在php.ini中把____設為on。  

allow_call_time_pass_reference  

是否啟用在函數調用時強制參數被按照引用傳遞  

30.在HTML語言中,頁面頭部的meta標記可以用來輸出文件的編碼格式,以下是一個標準的meta語句,請使用PHP語言寫一個函數,把一個標準HTML頁面???的類似meta標記中的charset部分值改為big5。(新浪)  

請注意:  

(1)需要處理完整的html頁面,即不光此meta語句  

(2)忽略大小寫  

(3)'和"在此處是可以互換的  

(4)'Content-Type'兩側的引號是可以忽略的,但'text/html;charset=gbk'兩側的不行  

(5)注意處理多余空格  

編寫正則表達式如下:  

$reg1="/()/i";  

31.PHP中如何判斷一個字符串是否是合法的日期模式:2007-03-1313:13:13。要求代碼不超過5行。functioncheckDateTime($data){  

if(date('Y-m-dH:i:s',strtotime($data))==$data){  

returntrue;  

}else{  

returnfalse;  

}  

}  

//示例  

$data='2015-06-2013:35:42';  

var_dump(checkDateTime($data));//bool(true)  

$data='2015-06-3613:35:42';  

var_dump(checkDateTime($data));//bool(false)  

?>  

32.PHP中,如何獲得一個數組的鍵值?  

使用key()可以獲得數組中當前元素的鍵名,使用current()則可以返回當前元素的值。  

使用array_keys()則可以得到數組中所有的鍵名。  

使用foreach結構foreach($arraskey=>value)可以通過key和value分別獲取鍵名和值。  

33.如果模板是用smarty模板。怎樣用section語句來顯示一個名為$data的組。比如:  

$data=array(  

0=>array('id'=>8,'name'=>'name1'),  

1=>array('id'=>10,'name'=>'name2'),  

2=>array('id'=>15,'name'=>'name3')  

);  

寫出在模板頁的代碼?若用foreach語句又要怎樣顯示呢?  

用section語句:  

<{sectionname=testloop=$datastart=0step=1}>  

id:<{$data[test].id}>  

name:<{$data[test].name}>  

<{sectionelse}>  

數組為空  

<{/section}>  

用foreach語句:  

<{foreachfrom=$dataitem=test}>  

id:<{$test.id}>  

name:<{$test.name}>  

<{foreachelse}>  

數組為空  

<{/foreach}>  

34.哪個選項會匹配下邊的這個正則表達式?(/.*xyz\d/)  

A.*****xyz  

B.*****xyz1  

C.******xyz2  

D.*xyz  

答案:C  

35.以下哪個錯誤無法被標準的錯誤控制器獲取?  

A.E_WARNING  

B.E_USER_ERROR  

C.E_PARSE  

D.E_NOTICE  

答案:B  

36.以下哪種錯誤類型無法被自定義的錯誤處理器捕捉到?  

A.E_WARNING  

B.E_USER_ERROR  

C.E_PARSE  

D.E_NOTICE  

答案:C  

37.(^\s)|(\s$)這個正則表達式作用是:__________;  

匹配以0個或多個空白符開頭或者0個或多個空白符結尾的字符串  

38.編寫函數取得上一月的最后一天  

date_default_timezone_set('PRC');  

/**  

*獲取給定月份的上一月最后一天  

*@param$datestring給定日期  

*@returnstring上一月最后一天  

*/  

functionget_last_month_last_day($date=''){  

if($date!=''){  

$time=strtotime($date);  

}else{  

$time=time();  

}  

$day=date('j',$time);//獲取該日期是當前月的第幾天  

returndate('Y-m-d',strtotime("-{$day}days",$time));  

}  

//測試  

echoget_last_month_last_day();  

echo"  

";  

echoget_last_month_last_day("2013-3-21");  

?>  

39.在很多時候,我們可以通過apache的主配置文件來設置對test目錄的訪問權限控制,如http://IP/test請問如果需設置test下的一個子目錄的訪問控制權限,是否可以在主配置文件中修改,如果不可以應如何解決。  

可以,還可以在需要控制的子目錄下創建.htaccess文件,寫入訪問控制。  

40.如果我的網站用的utf-8編碼,為防止亂碼出現,都需要注意哪些地方?  

從以下幾個方面考慮:  

數據庫中庫和表都用utf8編碼  

php連接mysql,指定數據庫編碼為utf8mysql_query(“setnamesutf8”);  

php文件指定頭部編碼為utf-8header(“content-type:text/html;charset=utf-8”);  

網站下所有文件的編碼為utf8  

html文件指定編碼為utf-8  

41.在url中用get傳值的時候,若中文出現亂碼,應該用哪個函數對中文進行編碼?  

urlencode()  

42.寫出兩種對變量加密的函數?  

md5(str);sha1(str);  

43.如何把2009-9-210:30:25變成unix時間戳?  

date_default_timezone_set("PRC");  

//將字符串轉成Unix時間戳  

$unix_time=strtotime("2009-9-210:30:45");  

echo$unix_time;  

echo"  

";  

//格式化Unix時間戳為正常時間格式  

echodate("Y-m-dH:i:s",$unix_time);  

?>  

44.如何把一個GB2312格式的字符串裝換成UTF-8格式?  

iconv('GB2312','UTF-8','悄悄是別離的笙簫');  

?>  

45.如果需要原樣輸出用戶輸入的內容,在數據入庫前,要用哪個函數處理?  

htmlspecialchars或者htmlentities  

46.寫出五種以上你使用過的PHP的擴展的名稱(提示:常用的PHP擴展)  

mb_sring、iconv、curl、GD、XML、socket、MySQL、PDO等  

47.了解MVC模式嗎?請寫出三種以上目前PHP流行的MVC框架名稱(不區分大小寫)  

FleaPHP、ZendFramework、CakePHP、Symfony、ThinkPHP、YII、CodeIgniter等  

48.php中WEB上傳文件的原理是什么,如何限制上傳文件的大小?  

上傳文件的表單使用post方式,并且要在form中添加enctype='multipart/form-data'。  

一般可以加上隱藏域:,位置在file域前面。  

value的值是上傳文件的客戶端字節限制。可以避免用戶在花時間等待上傳大文件之后才發現文件過大上傳失敗的麻煩。  

使用file文件域來選擇要上傳的文件,當點擊提交按鈕之后,文件會被上傳到服務器中的臨時目錄,在腳本運行結束時會被銷毀,所以應該在腳本結束之前,將其移動到服務器上的某個目錄下,可以通過函數move_uploaded_file()來移動臨時文件,要獲取臨時文件的信息,使用$_FILES。  

限制上傳文件大小的因素有:  

客戶端的隱藏域MAX_FILE_SIZE的數值(可以被繞開)。  

服務器端的upload_max_filesize,post_max_size和memory_limit。這幾項不能夠用腳本來設置。  

自定義文件大小限制邏輯。即使服務器的限制是能自己決定,也會有需要個別考慮的情況。所以這個限制方式經常是必要的。  

49.簡述UBBcode的實現原理。(YG)  

UBB代碼是HTML的一個變種,通過程序自定義我們的標簽,比如“[a]PHP中UBB的使用[/a]”這樣的標簽,其實質就是查找[a][/a]標簽,將其替換成的標準html,說白了,就是將標準的html標記通過技術手段使其簡化,其輸出出來的結果還是標準的html。  

明白了ubb的原理,那么再制作一個簡單的ubb編輯器就不難了,和fck之類的編輯器比較起來,ubb代碼最大的優點就是代碼簡單,功能很少,簡單的ubb只需要一個文件,而且ubb標簽可以自己來定義,更改起來很方便,在php中就是利用替換函數就可以將  

html進行標簽化,輸出時進行標簽的轉化。  

50.怎么把文件保存到指定目錄?怎么避免上傳文件重名問題?  

可以自己設置上傳文件的保存目錄,與文件名拼湊形成一個文件路徑,使用move_uploaded_file(),就可以完成將文件保存到指定目錄。  

可以通過上傳的文件名獲取到文件后綴,然后使用時間戳+隨機數+文件后綴的方式為文件重新命名,這樣就避免了重名。  

51._____函數能返回腳本里的任意行中調用的函數的名稱。該函數同時還經常被用在調試中,用來判斷錯誤是如何發生的。(奇矩互動)  

debug_print_backtrace()  

52.在Smarty模板語法中怎么能遍歷數組a=array(array(′id′=>0),array(′id′=>1),array(′id′=>2),……)id=>0?10000,怎么判斷當id=>500,讓輸出的值在HTML里變為紅色?(億郵)設數組分配過來的數組名為ids  

{sectionname=temploop=$ids}  

{if$ids[temp].id==500}  

{$ids[temp].id}  

{esle}  

{$ids[temp].id}  

{/if}  

{/section}  

53.在Smarty模板語法中如何獲取當前時間,并且使用Y-m-dH:i:s的格式輸出?  

使用{$smarty.now}來獲取當前時間,得到的是unix系統時間戳  

使用變量調節器進行格式化,如下:  

{$smarty.now|date_format:“%Y-%m-%d%H:%M:%S”}  

54.在Smarty模板語法中如何獲取php的全局環境變量  

$smarty.get.變量#顯示通過get方式傳過來的指定變量的值  

$smarty.post.變量#顯示通過post方式傳過來的指定變量的值  

$smarty.cookies.變量#顯示通過cookie中指定變量的值  

$smarty.server.SERVER_NAME#顯示server變量值,$_SERVER系列變量  

$smarty.env.PATH#顯示系統環境變量值,$_ENV系列變量  

$smarty.session.變量#顯示session中指定變量的值  

$smarty.request.變量#顯示通過post、get、cookie中指定變量的值  

55.在Smarty模板中如何用自定義函數  

使用模板分隔符包含,傳遞參數則使用HTML屬性的方式,例如:  

{html_imagefile="pumpkin.jpg"}  

56.列舉出你所知道的php系統函數庫例如,數學函數庫  

mysql,gd,pdo,XML,zip,filesystem,mail等  

57.假如讓你來寫一個函數實現Utf-8轉gb2312,那么函數的名稱應該怎么命名?(億郵)  

utf8_to_gb2312或者utf8togb2312  

58.請描述如下URL重寫規則的用意。  

RewriteEngineon  

RewriteCond%{REQUEST_FILENAME}!-f  

RewriteCond%{REQUEST_FILENAME}!-d  

RewriteBase/  

RewriteRule./index.php[L]  

如果REQUEST_FILENAME文件存在,就直接訪問文件,不進行下面的rewrite規則,  

如果REQUEST_FILENAME目錄存在,就直接訪問目錄,不進行下面的rewrite規則,  

RewriteRule./index.php[L]的意思是把所有的請求都給index.php處理。  

59.Warning:Cannotmodifyheaderinformation-headersalreadysentby(outputstartedatD:\src\init.php:7)inD:\src\init.phponline10通常什么情況下php會報該警告信息?  

一般是在header、set_cookie以及session_start函數前面有輸出(包括空格)的情況下,會報該警告信息  

以上就是扣丁學堂盤點的年PHP高級開發工程師面試題及答案匯總的詳細的介紹,最后想要學好PHP一定要選擇專業靠譜的PHP培訓機構,扣丁學堂PHP培訓不僅有專業的老師和與時俱進的課程體系,還有大量的PHP視頻教程供學員觀看學習,想要學好PHP的小伙伴抓緊時間行動吧。扣丁學堂PHP技術交流群:374332265。


*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。

關鍵詞:

相關推薦

新思科技推出業界首款連接大規模AI加速器集群的超以太網和UALink IP解決方案

【干貨】二極管限幅電路理論分析,工作原理+作用,幾分鐘搞定

IDC:預計 2025 年中國新能源汽車市場規模將接近 1400 萬輛

運算放大器參數的簡易測量“指南”

國家標準 電力線載波系統設計導則

9 種電子電路保護電路介紹,工作原理+電路圖,幾分鐘快速搞定

國內IC廠商索引

資源下載 2007-02-16

第四屆智能車北京科技大學特等獎

視頻 2010-02-01

第二屆飛思卡爾智能車比賽全國第8名視頻

視頻 2010-02-01

第二屆飛思卡爾智能車比賽全國第7名視頻

視頻 2010-02-01

華為快充自動充電機器人亮相:適配超充聯盟所有車型,明年上半年量產

廣義軟開關變換器的技術原理和應用

資源下載 2007-02-16

如何用示波器測量串口波特率?

HCS300/301滾動碼原理說明

英特爾確認已從 x86S 計劃轉向,仍致力于推動 x86 生態系統創新協作

嵌入式系統 2024-12-20

第二屆飛思卡爾智能車比賽全國第9名視頻

視頻 2010-02-01

第四屆飛思卡爾智能車 成都信息工程學院

視頻 2010-02-01

SK 海力士被曝贏得博通 HBM 訂單,預計明年 1b DRAM 產能將擴大到 16~17 萬片

國產電阻器、電位器、電容器型號命名法

開關電源拓撲結構有哪幾種?怎么選擇?看這一文,12種結構總結

更多 培訓課堂
更多 焦點
更多 視頻

技術專區