- 相關(guān)推薦
Yahoo-PHP面試筆試題目
1. 以下哪一句不會把 John 新增到 users 陣列?
* $users[] = ‘john’;
* array_add($users,’john’);
* array_push($users,‘john’);
* $users ||= ‘john’;
2. sort()、assort()、和 ksort() 有什么分別?它們分別在什么情況下使用?
3. 以下的代碼會產(chǎn)生什么?為什么?
$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;
4. 一個 reference 跟一個正規(guī)的變量有什么分別?如何 pass by reference?在什么情況下我們需要這樣做?
5. 哪一些函式可以在現(xiàn)正執(zhí)行的腳本中加入函式庫?
以下是 Matt Wilkin 提供的解答:
1. 以下哪一句不會把 John 新增到 users 陣列?
* $users[] = ‘john’;
成功把 John 新增到陣列 users。
* array_add($users,’john’);
函式 array_add() 無定義。
* array_push($users,‘john’);
成功把 John 新增到陣列 users。
* $users ||= ‘john’;
語法錯誤。
2. sort()、assort()、和 ksort() 有什么分別?它們分別在什么情況下使用?
* sort()
根據(jù)陣列中元素的值,以英文字母順序排序,索引鍵會由 0 到 n-1 重新編號。主要是當陣列索引鍵的值無關(guān)疼癢時用來把陣列排序。
* assort()
PHP 沒有 assort() 函式,所以可能是 asort() 的筆誤。
asort()
與 sort() 一樣把陣列的元素按英文字母順序來排列,不同的是所有索引鍵都獲得保留,特別適合替聯(lián)想陣列排序。
* ksort()
根據(jù)陣列中索引鍵的值,以英文字母順序排序,特別適合用于希望把索引鍵排序的聯(lián)想陣列。
3. 以下的代碼會產(chǎn)生什么?為什么? $num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;
由于函式 multiply() 沒有指定 $num 為全域變量(例如 global $num 或者 $_GLOBALS['num']),所以 $num 的值是 10。
4. 一個 reference 跟一個正規(guī)的變量有什么分別?如何 pass by reference?在什么情況下我們需要這樣做?
Reference 傳送的是變量的地址而非它的值,所以在函式中改變一個變量的值時,整個應用都見到這個變量的新值。
一個正規(guī)變量傳送給函式的是它的值,當函式改變這個變量的值時,只有這個函式才見到新值,應用的其他部分仍然見到舊值。
$myVariable = “its’ value”;
Myfunction(&$myVariable); // 以 reference 傳送參數(shù)
以 reference 傳送參數(shù)給函式,可以使函式改變了的變量,即使在函式結(jié)束后仍然保留新值。
5. 哪一些函式可以用來在現(xiàn)正執(zhí)行的腳本中插入函式庫?
對這道題目不同的理解會有不同的答案,我的第一個想法是插入 PHP 函式庫不外乎 include()、include_once()、require()、require_once(),但細心再想,「函式庫」也應該包括 com 物件和 .net 函式庫,所以我們的答案也要分別包括 com_load 和 dotnet_load,下次有人提起「函式庫」的時候,別忘記這兩個函式。
【Yahoo-PHP面試筆試題目】相關(guān)文章:
Yahoo-PHP筆試題02-11
Intel筆試面試題目11-06
中興筆試+面試題目11-21
面試筆試題目及答案08-12
護士面試筆試題目11-23
小升初面試筆試及面試題目11-21
審計崗位面試筆試題目03-17
京東面試筆試題目03-17
面試筆試題目及答案解析08-18
招商銀行面試+筆試的題目11-02