即將面臨畢業的準畢業生們是不是在為工作發愁了?下面是本站小編精心為大家整理的2017年初級PHP程式設計師筆試題,希望對大家有幫助,更多內容請關注應屆畢業生網!
一、基礎及程式題(建議使用你擅長的語言:C/C++、PHP、Java)
1.寫一個排序演算法,可以是氣泡排序或者是快速排序,假設待排序物件是一個維陣列。(提示:不能使用系統已有函式,另外請仔細回憶以前學習過的
基礎知識)
2.實現一個字串擷取的函式,類似於substr,必須能夠擷取中文這種多位元組編碼。假設每個中文也是一個字元,普通的數字、符號、字母也是一個字
符。(提示:GB編碼的中文字元高位範圍是 x81-xFE )
3.寫一個遍歷指定目錄下所有子目錄和子檔案的函式(提示:可以使用遞迴的方法)
4.寫出匹配郵箱地址和URL的兩個正則表示式。類似下面的:
郵箱地址:user_ /
URL地址:_
(提示:使用標準的正則表示式,就是PHP中preg_* 類的正則處理函式能夠解析的正則)
二、資料庫技術題
1.寫出三種以上MySQL資料庫儲存引擎的名稱(提示:不區分大小寫)
2.說出你所知道的三種以上開源資料庫的名稱(提示:想想目前國外流行的開源資料庫)
L資料庫中的欄位型別varchar和char的主要區別是什麼?那種欄位的查詢效率要高,為什麼?
4.說出MySQL 4.和MySQL 4.1版本的最主要的兩個區別。如果你使用過MySQL 5,請說說MySQL 5跟MySQL 4的主要區別。(後半題選作)
L資料庫基本的三個優化法則是什麼?(提示:從服務配置、應用、開發角度考慮)
三、綜合技術題
1.請使用JavaScript寫出三種產生一個Image 標籤的方法(提示:從方法、物件、HTML角度考慮)
2.請使用CSS樣式,描述兩種方法在當前列中只顯示一個div物件
3.請描述出兩點以上XHTML和HTML最顯著的區別
4.出五種以上你使用過的PHP的擴充套件的名稱(提示:常用的PHP擴充套件)
5.瞭解MVC模式嗎?請寫出三種以上目前PHP流行的MVC框架名稱(不區分大小寫)ThinkPHP QeePHP YiiPHP
6.寫出15個以上你所知道的常用的Linux命令和它的功能
7.使用過Vim編輯器嗎?如果使用過,如何在vim裡切分多個視覺化視窗,包括橫排和縱排。(本題選作)
8.說說Linux下的find命令和grep命令的區別(本題選作)
9.請描述出七層網路模型的名稱,由下到上(可以使用中文描述)
1.說說下面這些這些協議的全稱和中文解釋(提示:都是工作在應用層)SMTP、POP3、HTTP、FTP、DNS
11.使用過Memcache快取嗎,如果使用過,能夠簡單的描述一下它的工作原理嗎?(本題選作)
12.請大致的說說Session的工作原理。(提示:與Cookie有相應的關係)
13.說說你所瞭解的搜尋引擎包含那些技術?(本題選作)
四、專案及設計題
1.一個Web開發團隊開發中,大致說說你所瞭解的所有成員的分工合作情況
2.說說你做過的最得意的專案或者個人開發作品(可以是個人作品,也可以是合作專案)
3.假設給你5臺伺服器,請大致的描述一下,如何使用你所熟悉的開源軟體,搭建一個日PV 3萬左右的中型網站
PHP程式設計師筆試題 (參考答案)
五、基礎及程式題(建議使用你擅長的語言:C/C++、PHP、Java)
5.寫一個排序演算法,可以是氣泡排序或者是快速排序,假設待排序物件是一個維陣列。(提示:不能使用系統已有函式,另外請仔細回憶以前學習過的
基礎知識)
//氣泡排序(陣列排序)
function bubble_sort($array)
{
$count = count($array);
if ($count <= ) return false;
for($i=; $i<$count; $i++){
for($j=$count-1; $j>$i; $j--){
if ($array[$j] < $array[$j-1]){
$tmp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $tmp;
}
}
}
return $array;
}
//快速排序(陣列排序)
function quicksort($array) {
if (count($array) <= 1) return $array;
$key = $array[];
$left_arr = array();
$right_arr = array();
for ($i=1; $i
if ($array[$i] <= $key)
$left_arr[] = $array[$i];
else
$right_arr[] = $array[$i];
}
$left_arr = quicksort($left_arr);
$right_arr = quicksort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}