久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

php面試題優(yōu)化數(shù)據(jù)庫 php面試題數(shù)據(jù)庫優(yōu)化方法

PHP程序員上機面試題(并附答案,回答好的加分)

某大公司的PHP面試題

創(chuàng)新互聯(lián)專業(yè)提供成都主機托管四川主機托管成都服務(wù)器托管四川服務(wù)器托管,支持按月付款!我們的承諾:貴族品質(zhì)、平民價格,機房位于中國電信/網(wǎng)通/移動機房,四川電信科技城機房服務(wù)有保障!

管理提醒: 本帖被 haowubai 執(zhí)行取消置頂操作(2009-07-30)

1. 如何用php的環(huán)境變量得到一個網(wǎng)頁地址的內(nèi)容?ip地址又要怎樣得到?

[php]

echo $_SERVER ['PHP_SELF'];

echo $_SERVER ['SERVER_ADDR'];

[/php]

2. 求兩個日期的差數(shù),例如2007-2-5 ~ 2007-3-6 的日期差數(shù)

[php]

$begin=strtotime('2007-2-5');

$end=strtotime('2007-3-6');

echo ($end-$begin)/(24*3600);

[/php]

3. 請寫一個函數(shù),實現(xiàn)以下功能:

字符串“open_door” 轉(zhuǎn)換成 “OpenDoor”、”make_by_id” 轉(zhuǎn)換成 ”MakeById”。

[php]

function changeStyle( $str) {

/*$str = str_replace ( "_", " ", $str );

$str = ucwords ( $str );

$str = str_replace ( " ", "", $str );

return $str;*/

$arrStr=explode('_',$str);

foreach($arrStr as $key=$value){

$arrStr[$key]=strtoupper(substr($value,0,1)).substr($value,1);

}

return implode('',$arrStr);

}

$s = "open_door";

echo changeStyle ( $s );

[/php]

4. 要求寫一段程序,實現(xiàn)以下數(shù)組$arr1轉(zhuǎn)換成數(shù)組$arr2:

[php]$arr1 = array (

'0' = array ('fid' = 1, 'tid' = 1, 'name' ='Name1' ),

'1' = array ('fid' = 1, 'tid' = 2 , 'name' ='Name2' ),

'2' = array ('fid' = 1, 'tid' = 5 , 'name' ='Name3' ),

'3' = array ('fid' = 1, 'tid' = 7 , 'name' ='Name4' ),

'4' = array ('fid' = 3, 'tid' = 9, 'name' ='Name5' )

);

$arr2 = array (

'0' = array (

'0' = array ( 'tid' = 1, 'name' = 'Name1'),

'1' = array ( 'tid' = 2, 'name' = 'Name2'),

'2' = array ( 'tid' = 5, 'name' = 'Name3'),

'3' = array ( 'tid' = 7, 'name' = 'Name4')

),

'1' = array (

'0' = array ( 'tid' = 9, 'name' = 'Name5' )

)

);

?php

$arr1 = array (

'0' = array ('fid' = 1, 'tid' = 1, 'name' ='Name1' ),

'1' = array ('fid' = 1, 'tid' = 2 , 'name' ='Name2' ),

'2' = array ('fid' = 1, 'tid' = 5 , 'name' ='Name3' ),

'3' = array ('fid' = 1, 'tid' = 7 , 'name' ='Name4' ),

'4' = array ('fid' = 3, 'tid' = 9, 'name' ='Name5' )

);

function changeArrayStyle($arr){

foreach($arr as $key=$value){

$result[$value['fid']][]=$value;

}

return array_values($result);

}

$arr2=changeArrayStyle($arr1);

echo "pre";

var_dump($arr2);

[/php]

5. 請簡述數(shù)據(jù)庫設(shè)計的范式及應(yīng)用。

一般第3范式就足以,用于表結(jié)構(gòu)的優(yōu)化,這樣做既可以避免應(yīng)用程序過于復雜同時也避免了SQL語句過于龐大所造成系統(tǒng)效率低下。

ANSWER:

第一范式:若關(guān)系模式R的每一個屬性是不可再分解的,再屬于第一范式。

第二范式:若R屬于第一范式,且所有的非碼屬性都完全函數(shù)依賴于碼屬性,則為第二范式。

第三范式:若R屬于第二范式,且所有的非碼屬性沒有一個是傳遞函數(shù)依賴于候選碼,則屬于第三范式。

6.一個表中的Id有多個記錄,把所有這個id的記錄查出來,并顯示共有多少條記錄數(shù),用SQL語句及視圖、存儲過程分別實現(xiàn)。

存儲過程:

[php]

DELIMITER //

create procedure proc_countNum(in columnId int,out rowsNo int)

begin

select count(*) into rowsNo from member where member_id=columnId;

end

call proc_countNum(1,@no);

select @no;

[/php]

視圖:

create view v_countNum as select member_id,count(*) as countNum from member group by member_id

select countNum from v_countNum where member_id=1

7 表中有A B C三列,用SQL語句實現(xiàn):當A列大于B列時選擇A列否則選擇B列,當B列大于C列時選擇B列否則選擇C列。

[php]select

case

when first_namemiddle_name then

case when first_namelast_name then first_name

else last_name end

else

case when middle_namelast_name then middle_name else last_name

end

end as name

from member

[/php]

8請簡述項目中優(yōu)化sql語句執(zhí)行效率的方法,從哪些方面,sql語句性能如何分析?

ANSWER: sql優(yōu)化有鳥用,不如直接加索引。

9 如果模板是用smarty模板。怎樣用section語句來顯示一個名為$data的數(shù)組。比如:

[php]$data = array(

[0] = array( [id]=8 [name]=’name1′)

[1] = array( [id]=10 [name]=’name2′)

[2] = array( [id]=15 [name]=’name3′)

……

)[/php]

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

占無答案.

10 寫一個函數(shù),能夠遍歷一個文件夾下的所有文件和子文件夾。(目錄操作)

[php] ?php

$d = dir(dirname(__file__));

//echo "Handle: " . $d-handle . "\n";

//echo "Path: " . $d-path . "\n";

while ( false !== ($entry = $d-read ()) ) {

echo $entry . "br /";

}

$d-close ();

[/php]

11 兩張表 city表和province表。分別為城市與省份的關(guān)系表。

city:

id City Provinceid

1 廣州 1

2 深圳 1

3 惠州 1

4 長沙 2

5 武漢 3

………. 廣州

province:

id Province

1 廣東

2 湖南

3 湖北

……….

(1) 寫一條sql語句關(guān)系兩個表,實現(xiàn):顯示城市的基本信息。?

(2) 顯示字段:城市id ,城市名, 所屬省份 。

如:

Id(城市id) Cityname(城市名) Privence(所屬省份)

。。。。。。。。。

。。。。。。。。。

(2)如果要統(tǒng)計每個省份有多少個城市,請用group by 查詢出來。?

顯示字段:省份id ,省份名,包含多少個城市。

ANSWER:

1.select A.id,A.Cityname,B.Province from city A,province B where A.provinceid=B.id

2.select B.id,B.Province,count(*) as num from city A,province B where A.provinceid=B.id group by B.id

12. 按照你的經(jīng)驗請簡述軟件工程進行軟件開發(fā)的步驟。以下工具Rational Rose、PowerDesigner、Project、VSS或CVS、TestDirector使用過那種,有缺點是什么?

公司用dbdesigner及cvs,測試管理工具用的是Mantis

13. 請簡述操作系統(tǒng)的線程與進程的區(qū)別。列舉LINUX下面你使用過的軟件?

14. 請使用偽語言結(jié)合數(shù)據(jù)結(jié)構(gòu)冒泡排序法對以下一組數(shù)據(jù)進行排序 10 2 36 14 10 25 23 85 99 45。

[php]function bubble_sort( $arr){

$number=count($arr);

for($i=0;$i$number-1;$i++){

for($j=0;$j$number-1-$i;$j++){

if($arr[$j]$arr[$j+1]){

$tmp=$arr[$j];

$arr[$j]=$arr[$j+1];

$arr[$j+1]=$tmp;

}

}

}

}

$str="10 2 36 14 10 25 23 85 99 45";

$arr=explode(" ",$str);

bubble_sort($arr);

echo "pre";

var_dump($arr);

[/php]

測試PHP性能和MYSQL數(shù)據(jù)庫性能的工具,和找出瓶頸的方法? PHP面試題

通過sysbench的oltp_read_write測試來模擬業(yè)務(wù)壓力、以此來給指定的硬件環(huán)境配置一份比較合理的MySQL配置文件。

環(huán)境介紹

硬件配置

請點擊輸入圖片描述

軟件環(huán)境

請點擊輸入圖片描述

優(yōu)化層級與指導思想

優(yōu)化層級

MySQL數(shù)據(jù)庫優(yōu)化可以在多個不同的層級進行,常見的有:

SQL優(yōu)化

參數(shù)優(yōu)化

架構(gòu)優(yōu)化

本文重點關(guān)注:參數(shù)優(yōu)化

指導思想

日志先行 -- 一個事務(wù)能否成功提交的關(guān)鍵是日志是否成功落盤,與數(shù)據(jù)沒有太大的關(guān)系;也就是說對寫的優(yōu)化可以表述為各方面的資源向?qū)懖僮鲀A斜。

瓶頸分析 -- 通過show global status 的各個計數(shù)器的值基本上就能分析出當前瓶頸所在,再結(jié)合一些簡單的系統(tǒng)層面的監(jiān)控工具如top iostat 就能明確瓶頸。

整體性能是“讀”“寫”之間的再平衡。

誰有面試phper的經(jīng)驗

這方面網(wǎng)上有比較多的,針對3-5年的PHPer常見的面試題,參考如下:

1、平時喜歡哪些php書籍及博客?CSDN、虎嗅、獵云

2、js閉包是什么?

3、for與foreach哪個更快?

4、php鳥哥是誰?能不能講一下php執(zhí)行原理?

5、php加速器有哪些?apc、zend、xcache.....能不能講一下它的加速原理?

6、Node.js能徹底代替php+apache是扯淡。

7、怎樣判斷一個值是否存在于數(shù)組中?in_array(),array_key_exists,......

8、怎樣判斷select語句中是否使用了索引?explain

9、sphinx的中文分詞詞庫使用第三方庫還是自己建庫?

10、如果一個被面試者經(jīng)驗少、基礎(chǔ)差,此時卻問些高深的知識。要懷疑它的穩(wěn)定性,可以提問加班對他會不會有抵觸。

11、mysql與mysqli的區(qū)別有哪些?

12、將來的發(fā)展方向?安全、還是數(shù)據(jù)挖掘、大數(shù)據(jù)處理?

13、php的面向?qū)ο螅侯惖男揎椃?、封裝、繼承、多態(tài)體現(xiàn)方面

14、php 多態(tài)是什么?

15、Type Hinting:

16、php的設(shè)計模式:單例模式、工廠模式、生產(chǎn)者模式......等23種

17、服務(wù)器狀態(tài)碼:200、202、301、404、500......

18、i++與++i的區(qū)別?

19、項目開發(fā):電商項目中的購物車數(shù)據(jù)持久化、考試系統(tǒng)的安全性考慮、

20、mysql設(shè)計基礎(chǔ):三大范式、功能-思維導圖、創(chuàng)建表的第一字段是什么?

21、mysql字段char、varchar、int、smallint、tinyint、mediumint、bigint、decimal、double、float字節(jié)數(shù)及應(yīng)用場景。

22、memcache與mongoDB、Redis各自的使用場景是什么?

23、為什么mongoDB與Redis非但沒有形成競爭反而是互補關(guān)系?

24、Redis數(shù)據(jù)類型有哪些?int、string、hash、set、list ?

25、安裝linux軟件時使用make方式還使用yum方式?

26、linux網(wǎng)絡(luò)優(yōu)化:查看進程ps -aux|grep mysqld、怎樣查看最大文件打開數(shù)?

27、C語言中的虛函數(shù)是什么?

28、1條微薄要推送給100萬個粉絲該怎么處理?

29、知道哪些算法?冒泡排序?快速排序?二分查找法?

30、yii thinkphp ci 各自優(yōu)點

31、php 設(shè)計模式有哪些?

32、c 排序算法有哪些?

33、php 基本結(jié)構(gòu)是什么?

34、memcache magent 分布式設(shè)計?

35、redis 分布式設(shè)計,如何設(shè)計?

36、mongo 集群架構(gòu)是怎樣的?

37、mysql 索引原理及sql性能優(yōu)化

38、tcp/ip 網(wǎng)絡(luò)協(xié)議,osi7層指是什么?

39、php 處理大數(shù)據(jù)業(yè)務(wù)

40、linux 應(yīng)用 負載性能查看 ?

41、nginx 實戰(zhàn)優(yōu)化業(yè)務(wù)功能 ?

42、談一下近三年來你的得意之作?

43、看看簡歷,會問一些過去做的項目的用戶量、pv、吞吐量、相關(guān)難點和解決方法等

44、數(shù)據(jù)庫設(shè)計經(jīng)驗,為什么進行分表? 分庫?

45、一般多少數(shù)據(jù)量開始分表? 分庫? 分庫分表的目的? 什么是數(shù)據(jù)庫垂直拆分? 水平拆分? 分區(qū)等等?可以舉例說明

46、數(shù)據(jù)庫優(yōu)化有哪些? 分別需要注意什么?

47、web開發(fā)方面會遇到哪些緩存? 分別如何優(yōu)化?

48、給你256M的內(nèi)存,對10G的文件進行排序(文件每行1個數(shù)字),如何實現(xiàn)?

49、對10G的文件進行查找如何實現(xiàn)?

50、統(tǒng)計10G文件每個關(guān)鍵字出現(xiàn)的次數(shù)如何實現(xiàn)?

51、假如你現(xiàn)在是12306火車訂票的設(shè)計師,你該如何設(shè)計滿足全國人民訂票?

52、假如有1億用戶的訪問量,你的服務(wù)器架構(gòu)是怎樣的? 用戶信息的存儲方案如何設(shè)計?

53、如果你是技術(shù)組長,所帶團隊任務(wù)進度無法完成你該如何解決?

54、如果在進度排滿的前提下插入任務(wù),你該如何保證總進度不延期?

55、如果有的工程師今天預定任務(wù)沒有完成,你該如何解決?

56、從你的經(jīng)驗方面談一下如何構(gòu)建高性能web站點? 需要哪些環(huán)節(jié)? 步驟? 每個步驟需要注意什么如何優(yōu)化等?

57、為什么要對數(shù)據(jù)庫進行主從分離?

58、如何處理多服務(wù)器共享session?

59、一個10G的表,你用php程序統(tǒng)計某個字段出現(xiàn)的次數(shù),思路是?

60、會告訴你一個nginx日志例子,用你認為最佳的編程語言統(tǒng)計一下http響應(yīng)時間超過1秒的前10個url?

61、給你一個mysql配置文件,用你認為最佳的編程語言解析該文件?

62、給你兩個路徑a和b,寫一個算法或思路計算a和b差距幾層并顯示a和b的交集?

63、給你一個url,在nginx配置一下rewrite指定到某個具體路徑?

64、一個php文件的解釋過程是? 一般加速php有哪些? 提高php整體性能會用到哪些技術(shù)?

65、session和cookie生存周期區(qū)別? 存儲位置區(qū)別?

66、require、include、require_once、include_once區(qū)別? 加載區(qū)別? 如果程序按需加載某個php文件你如何實現(xiàn)?

67、chrome號稱為多線程的,所以多線程和多進程的區(qū)別為?

68、php在2011年底出現(xiàn)hash碰撞,hash碰撞原理為? 如何進行修復?

69、web不安全因素有哪些? 分別如何防范?

70、假如兩個單鏈表相交,寫一個最優(yōu)算法計算交點位置,說思路也可以?

71、假如你是技術(shù)組長? 如何提高團隊效率?

72、nginx負載均衡有哪些? 如果其中一臺服務(wù)器掛掉,報警機制如何實現(xiàn)?

73、不優(yōu)化前提下,apache一般最大連接數(shù)為? nginx一般最大連接數(shù)為? mysql 每秒insert ? select ? update ? delete?

74、mysql 數(shù)據(jù)類型有哪些 ? 分別占用多少存儲空間 ?

75、nginx設(shè)置緩存js、css、圖片等信息,緩存的實現(xiàn)原理是?

76、如何提高緩存命中率? 如何對緩存進行顆粒化?

77、php的內(nèi)存回收機制是?

78、我的所有問題都問完了(當然沒有這么多),你有什么問題問我沒有?

本文標題:php面試題優(yōu)化數(shù)據(jù)庫 php面試題數(shù)據(jù)庫優(yōu)化方法
本文來源:http://www.sd-ha.com/article32/dohjcpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)面包屑導航、做網(wǎng)站、關(guān)鍵詞優(yōu)化、商城網(wǎng)站服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名