乙份不錯的php面試題 附答案 (筆試題)

2022-03-28 22:09:22 字數 3931 閱讀 1440

一、基礎題

1. 寫出如下程式的輸出結果

<?php    

$str1 = null

;

$str2 = false

;

echo

$str1==$str2 ? '相等' : '不相等';

$str3 = '';

$str4 = 0;

echo

$str3==$str4 ? '相等' : '不相等';

$str5 = 0;

$str6 = '0';

echo

$str5===$str6 ? '相等' : '不相等';

?>

2. 寫出如下程式的輸出結果

<?php    

$a1 = null

;

$a2 = false

;

$a3 = 0;

$a4 = '';

$a5 = '0';

$a6 = 'null';

$a7 = array

();

$a8 = array(array

());

echo

empty($a1) ? 'true' : 'false';

echo

empty($a2) ? 'true' : 'false';

echo

empty($a3) ? 'true' : 'false';

echo

empty($a4) ? 'true' : 'false';

echo

empty($a5) ? 'true' : 'false';

echo

empty($a6) ? 'true' : 'false';

echo

empty($a7) ? 'true' : 'false';

echo

empty($a8) ? 'true' : 'false';

?>

3. 寫出如下程式的輸出結果

<?php    

$test = 'aaaaaa';

$abc = & $test

;

unset($test

);

echo

$abc

;?>

4. 寫出如下程式的輸出結果

<?php    

$count = 5;

function

get_count()

echo

$count

; ++$count

;

echo

get_count();

echo

get_count();

?>

5. 寫出如下程式的輸出結果

<?php    

$globals['var1'] = 5;

$var2 = 1;

function

get_value()

get_value();

echo

$var1

;

echo

$var2

;?>

6. 寫出如下程式的輸出結果

<?php    

function get_arr($arr

)

$arr1 = array(1, 2);

$arr2 = array(1, 2);

get_arr(&$arr1

); get_arr(

$arr2

);

echo

count($arr1

);

echo

count($arr2

);?>

7. 使用五種以上方式獲取乙個檔案的副檔名

要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,

必須使用php自帶的處理函式進行處理,方法不能明顯重複,可以封裝成函式,比如 get_ext1($file_name), get_ext2($file_name)

***二、演算法題*

使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列

使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列

寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式**

【答案】

(以下答案不一定是最好的,只是乙個簡單的參考)

一、基礎題

相等 相等 不相等

true true true true true false true false

aaaaaa 參考: 裡面的結論二

5 0 1

5 21 2

使用五種以上方式獲取乙個檔案的副檔名

function get_ext1($file_name)function get_ext2($file_name)function get_ext3($file_name)function get_ext4($file_name)function get_ext5($file_name)

二、演算法題

使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列

//氣泡排序(陣列排序)

function bubble_sort($array)}}

return $array;

}//快速排序(陣列排序)

function quick_sort($array

)

$left_arr = quick_sort($left_arr

);

$right_arr = quick_sort($right_arr

);

return

array_merge($left_arr, array($key), $right_arr

);}

使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列

//二分查詢(陣列裡查詢某個元素)

function bin_sch($array, $low, $high, $k)elseif ($k < $array[$mid])else

}return -1;

}//順序查詢(陣列裡查詢某個元素)

function seq_sch($array, $n, $k

) }

if ($i

<$n

)else

}

3.寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式

//二維陣列排序, $arr是資料,$keys是排序的健值,$order是排序規則,1是公升序,0是降序

function array_sort($arr, $keys, $order=0)

$keysvalue = array();

foreach($arr as $key => $val)

if($order == 0)else

reset($keysvalue);

foreach($keysvalue as $key => $vals)

$new_array = array();

foreach($keysort as $key => $val)

return $new_array;

}文章**自:

乙份Hive面試題及答案

1 某檔案的許可權為 d rw r r 用數值形式表示該許可權,則該八進位制數為 該檔案屬性是 0644 目錄 2 結束後台程序的命令是 kill 9 程序號 3 為指令碼程式指定執行許可權的命令及引數是 chmod x 指令碼 4 linux檔案許可權一共10位長度,分成四段,第三段表示的內容是 ...

PHP面試題(附答案)

1.在php中,當前指令碼的名稱 不包括路徑和查詢字串 記錄在預定義變數 1 中 而鏈結到當前頁面的的前一頁面url記錄在預定義變數 2 中 script name也可以 其它的見參考手冊 語言參考 變數 預定義變數 當前執行指令碼的絕對路徑名 d inetpub wwwroot php est.p...

送給非科班iOS開發,乙份面試題(附答案)

ios行業在經歷了過去幾年的爆發期後,現在到了乙個相對冷靜的時期,乙個良幣驅逐劣幣 去偽存真的階段。只有持續的專注和付出,才能夠在激烈的競爭中脫穎而出,成為強者。正如狄更斯所言,這是乙個最壞的時代,也是最好的時代 對於這些面試題,不要死記硬背,應該舉一反三,深刻理解實現機制 這也是科班和非科班的區別...