亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

php工程師面試問題

時間:2023-04-05 01:45:12 面試問題 我要投稿
  • 相關(guān)推薦

php工程師面試問題

  PHP開發(fā)工程師面試題分享

php工程師面試問題

  1. 下列哪一句不能將'john'添加到數(shù)組$user? 答:BD

  A. $user[] = 'john';

  B. array_add($user, 'john');

  C. array_push($user, 'john');

  D. $user ||= 'john';

  2. 比較sort(), asort(), ksort()三個函數(shù)的用法以及使用環(huán)境。

  答:sort -- 將數(shù)組的值由a-z重排,并自動替換索引從0...結(jié)束

  asort --- 此函數(shù)將數(shù)組的元素由a-z重新排列,且保持原先索引值和元素的對應(yīng)關(guān)系,這個函數(shù)主要是用于

  需要將數(shù)組的元素重新排列。這個函數(shù)比較常用。

  ksort --- 此函數(shù)將數(shù)組依照索引值由a-z重新排列

  例子:

  對array('a'=>111, '9'=>"orange", 6=>2, "apple");排序。

  sort則返回: Array ( [0] => apple [1] => orange [2] => 2 [3] => 111 )值由a-z重排,索引也變了。

  asort則返回:Array ( [10] => apple [9] => orange [6] => 2 [a] => 111 )值由a-z重排,保持索引以應(yīng)

  ksort則返回: Array ( [a] => 111 [6] => 2 [9] => orange [10] => apple )索引值由a-z重新排列,保持索

  引以應(yīng)

  3. 以下代碼輸出什么內(nèi)容, 為何。

  $num = 10;

  function foo(){

  $num = $num * 10;

  }

  foo();

  echo $num;

  答:

  結(jié)果為10.因為foo()中的$num是訪問不到函數(shù)外的變量的。要想訪問加上global $num;結(jié)果就成100了。

  4. 引用和普通變量的區(qū)別。

  答:普通變量是開辟了一塊新的存儲空間,引用是直接指向其他的存儲空間。

  如:

  $num = 10;

  function foo($num){

  $num = $num * 10;

  }

  foo($num);

  echo $num;

  調(diào)foo($num);函數(shù)時以變量傳遞,則返回10;

  如果改成引用傳遞,返回100;

  $num = 10;

  function foo(&$num){

  $num = $num * 10;

  }

  foo($num);

  echo $num;

  5. 加載類庫的方法。

  答:

  function __autoload($class){

  require_once("./lib/".$class.'.php');

  }

  6. foo()和@foo()的區(qū)別。

  答:加上@符號會屏蔽報錯提示。

  如下:

  $num = 10;

  function foo(&$num){

  $num = $num / 0;

  }

  foo($num);

  echo $num;

  大家都知道除數(shù)不能為0。如果加上@符號后就沒有Warning: Division by zero

  7. 你平時如何調(diào)試PHP代碼。

  答:用echo打出調(diào)試或用exit調(diào)試。再加上火狐瀏覽器調(diào)。

  8. === 的作用是什么?舉一個例子,使用 == 返回true,但是使用 === 返回false。

  答:=== 的作用是比較變量的值還比較變量的類型。==只比較值。

  如下:

  $str = '111';

  if($str==111){//如果改成===則返回"失敗了";

  echo "成功了";

  }else{

  echo "失敗了";

  }

  9. 聲明一個不含方法和屬性的類。

  答:class Db {}

  10. 創(chuàng)建一個對象myclass的實例。

  答:$db = new myclass();

  11. 從類的內(nèi)部訪問或者設(shè)置屬性。

  答:

  class DB{

  private $username; //用戶名

  private $userpwd; //密碼

  public function test(){

  $this->username='root';//給變量賦值

  self::test2();//相當(dāng)于$this->test2();//調(diào)用本類test2方法

  //parent::test2();這樣的話就調(diào)用了父類的test2方法

  }

  public function test2(){

  }

  }

  12. include與include_once的區(qū)別和聯(lián)系,以及include與require的區(qū)別和聯(lián)系。

  答:include與include_once區(qū)別是:用include_once如果該文件中的代碼已經(jīng)被包含了,則不會再次包含。如同此語句名字暗示的那樣,只會包含一次。

  include() 產(chǎn)生一個警告而 require() 則導(dǎo)致一個致命錯誤。換句話說,如果想在遇到丟失文件時停止處理頁面就用 require()。include() 就不是這樣,腳本會繼續(xù)運行。

  13. 使用什么函數(shù)重定向瀏覽器請求。

  答:header("Location: http://hi.baidu.com/woaidelphi/blog");

  14. 打開一個文件供讀寫。

  答:fopen("d:/test.txt","r+");//r+讀寫方式打開,將文件指針指向文件頭。'w+'讀寫方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。 'a+'讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之

  15. mysql_fetch_row和mysql_fetch_array的區(qū)別。

  答:mysql_fetch_row -- 從結(jié)果集中取得一行作為枚舉數(shù)組

  mysql_fetch_array -- 從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字數(shù)組,或二者兼有 //MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH

  16. 一個ereg_replace的理解。里面涉及正則捕捉和引用。

  答:ereg_replace -- 替換正則表達式

  string ereg_replace ( string pattern, string replacement, string string )

  本函數(shù)在 string 中掃描與 pattern 匹配的部分,并將其替換為 replacement。

  返回替換后的字符串。

  “里面涉及正則捕捉和引用。”這句話不懂。

  17. 寫一個正則表達式,過濾所有的HTML代碼。

  如下:

  $str = "大家好< /b>一起學(xué)習(xí)。共同進步。";

  echo preg_replace("/<[^>]+>/i",'',$str);

  18. 比較PHP與Perl的array和hash

  答:http://hi.baidu.com/sujun/blog/item/85a4c8131c06432bdd54010b.html上面寫的很好。

  19. How to get around stateless nature of HTTP using PHP ? (我理解錯誤)

  答:呵呵,不知。

  20. GD是用來做什么的。

  答:GD庫是用來做圖的。比如可以做驗證碼。

  21. 用PHP寫出幾個方法用來輸出HTML代碼塊。

  highlight_file('demo.html');

  22. Is PHP better than Perl? Discuss.

  如何面試PHP工程師?

  問一些日常的正常的PHP問題,主要是考察應(yīng)聘者的認知:

  一個包含中英文的字符串如何獲得它的自然長度(看看ta是否有encoding的知識和意識)

  問一問什么是ORM,有時候會問這個詞的英文全稱是什么,問問ta對于ORM有什么個人的看法?(看看ta學(xué)習(xí)細不細,有沒有技術(shù)判斷,PHP開發(fā)人員應(yīng)該知道什么時候使用ORM)

  問一問假如ta要自己去實現(xiàn)一個framework,ta會怎么設(shè)計。(看看ta對代碼架構(gòu)的理解,對MVC的理解)

  問一問framework設(shè)計里的url dispatcher他會怎么考慮。(HTTP知識)

  問一問ta對框架本身的看法

  了解一下ta對Design Pattern的認知,比如Singleton,Observer,F(xiàn)actory等常用的設(shè)計模式,問一問ta對設(shè)計模式本身的看法。

  問兩三個數(shù)據(jù)庫設(shè)計的問題

  問幾個前端的問題,哪怕ta的職位是PHP開發(fā)人員,好的PHP人員不可能不了解前端,而且很可能很了解前端

  問一問ta對noSQL的了解情況(對與noSQL的認識是和傳統(tǒng)Relational DB的認知是分不開的)

  問一問ta碰到問題時候會如何去尋找答案

  問一問ta習(xí)慣使用哪一個搜索引擎

  問一問ta最近看的書

  問一問ta的職業(yè)規(guī)劃,喜歡做什么,對工作環(huán)境有什么要求

【php工程師面試問題】相關(guān)文章:

關(guān)于php面試寶典及PHP面試技巧04-02

關(guān)于PHP慢速日志的問題分析06-22

工程師崗位面試問題12-12

pcb工程師面試問題11-27

php工程師簡歷模板05-19

網(wǎng)絡(luò)工程師面試問題07-06

php工程師崗位職責(zé)11-15

PHP開發(fā)工程師崗位的職責(zé)06-14

php面試自我介紹范文10-26

關(guān)于PHP面試題的分享11-20