一、基礎題
1. 寫出如下程式的輸出結果
$str1 = null;
$str2 = false;
echo $str1==$str2 ? '相等' : '不相等';
$str3 = '';
$str4 = 0;
echo $str3==$str4 ? '相等' : '不相等';
$str5 = 0;
$str6 = '0';
echo $str5===$str6 ? '相等' : '不相等';
?>
2. 寫出如下程式的輸出結果
$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. 寫出如下程式的輸出結果
$test = 'aaaaaa';
$abc = & $test;
unset($test);
echo $abc;
?>
4. 寫出如下程式的輸出結果
$count = 5;
get_count()
echo $count;
++$count;
echo get_count();
echo get_count();
?>
5. 寫出如下程式的輸出結果
$globals['var1'] = 5;
$var2 = 1;
get_()
get_();
echo $var1;
echo $var2;
?>
6. 寫出如下程式的輸出結果
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)
二、演算法題
1. 使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列
2. 使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列
3. 寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式
答案(以下答案不一定是最好的,只是乙個簡單的參考)
一、基礎題
1. 相等 相等 不相等
2. true true true true true false true false
3. aaaaaa
4. 5 0 1
5. 5 2
6. 1 2
7. 使用五種以上方式獲取乙個檔案的副檔名
1)get_ext1($file_name)
2)get_ext2($file_name)
3)get_ext3($file_name)
4)get_ext4($file_name)
5)get_ext5($file_name)
二、演算法題
1. 使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列
//氣泡排序(陣列排序)
bubble_sort($array)}}
return $array;
}//快速排序(陣列排序)
quick_sort($array)
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}2. 使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列
//二分查詢(陣列裡查詢某個元素)
bin_sch($array, $low, $high, $k)
elseif ($k < $array[$mid])
else }
return -1;
} //順序查詢(陣列裡查詢某個元素)
seq_sch($array, $n, $k) }
if ($i<$n)
else }
3. 寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式
//二維陣列排序, $arr是資料,$keys是排序的健值,$order是排序規則,1是公升序,0是降序
array_sort($arr, $keys, $order=0)
$keys = array();
foreach($arr as $key => $val)
if($order == 0)
else
reset($keys);
foreach($keys as $key => $vals)
$new_array = array();
foreach($keysort as $key => $val)
return $new_array;
}
PHP面試題(附答案)
1.在php中,當前指令碼的名稱 不包括路徑和查詢字串 記錄在預定義變數 1 中 而鏈結到當前頁面的的前一頁面url記錄在預定義變數 2 中 script name也可以 其它的見參考手冊 語言參考 變數 預定義變數 當前執行指令碼的絕對路徑名 d inetpub wwwroot php est.p...
php面試題(二)附答案
1.單引號和雙引號的用法 雙引號串中的內容可以被解釋而且替換,而單引號串中的內容總被認為是普通字元 2.web開發中的安全性問題 1.sql注入攻擊 2.資料庫操作安全,update delete insert的操作沒有限制使用者操作許可權,這將是一件很危險的事情。3.沒有驗證使用者http請求的方...
kafka面試題 附答案
1.什麼是kafka kafka是分布式發布 訂閱訊息系統,它最初是由linkedin公司開發的,之後成為apache專案的一部分,kafka是乙個分布式,可劃分的,冗餘備份的永續性的日誌服務,它主要用於處理流式資料。2.為什麼要使用 kafka?為什麼要使用訊息佇列?緩衝和削峰 上游資料時有突發流...