国产精品久久久久影院老司_亚洲福利在线视频_中国女警察一级毛片视频_亚洲一区在线免费视频_久久亚洲第一_狠狠干五月

蜜蜂職場文庫 > 面試技巧 >

php常見面試題

時間: 小龍 面試技巧

  php面試中,面試前必須做好準備,提前對面試題目有所了解,以下是小編為大家整理的php常見面試題,希望可以幫到大家。

  php常見面試題一

  1、表單提交get和post有何區別?

  答:get的方式是把數據在地址欄中發送,get傳送的數據量較小,不能大于2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。

  2、用PHP打印出前一天的時間格式是2006-5-10 22:21:21

  echo date("Y-m-d H:i:s",time()-(3600*24));或echo date("Y-m-d H:i:s",strtotime("-1 day"));

  3、php中include和require的區別?

  這兩種結構除了在如何處理失敗之外完全一樣。include() 產生一個警告而 require() 則導致一個致命錯誤。換句話說,如果你想在遇到丟失文件時停止處理頁面就用 require()。include() 就不是這樣,腳本會繼續運行。

  4、echo(),print(),print_r()的區別

  echo可以接多個參數,print只能接一個參數,它們都是PHP的語言結構,print_r是遞規打印,用來打印數組或對象

  5、能夠使HTML和PHP分離開使用的模板

  smarty,phplib,SmartTemplate

  6、你如何理解MVC模式?

  首先說一下框架,框架:就是別人把一些底層,常用操作.比如數據操作(增,刪,改,查)寫好.你來直接用.其它的功能要自己來做。

  MVC:設計模式,M模型,V顯示,C控制.現在許多框架都是基于MVC來做的把邏輯和顯示分開.比如你要換頁面,只需要改V里面的東西并不需要再去變動程序(詳細的東西可以上網上!查一下)

  7、如何實現PHP、JSP交互?

  PHP提供了支持JAVA的類庫文件,或者通過HTTP協議來交互數據

  8、使用哪些工具進行版本控制?

  VSS,CVS,SVN

  9、如何實現字符串翻轉?

  不考慮中英文混合,不是最優算法,不用php庫函數翻轉字符串:

  function str_to_reverse( $str ){

  for($length=0;$str[$length]!=null;$length++){;}

  $strlength = $length-1;

  unset($length);

  for($start=0,$end=$strlength;$start<$end;$start++,$end--){

  $temp = $str[$start];

  $str[$start] = $str[$end];

  $str[$end] = $temp;

  }

  unset($temp,$start,$end,$strlength);

  return $str;

  }

  10、優化MYSQL數據庫的方法。

  1) 將where中用的比較頻繁的字段建立索引,聯合索引。

  2) 保證單表數據不超過200W,適時分割表。

  3) 避免使用長連接。

  4) 修改my.cnf里面的各項參數,比如最大連接數,查詢緩存等。根據你的服務器內存來最大化調節那些配置參數。

  5) 針對需求,使用正確的表引擎,是myisam或是innodb。

  php常見面試題二

  1、PHP/MySQL編程

  1) 某內容管理系統中,表message有如下字段

  id 文章id

  title 文章標題

  content 文章內容

  category_id 文章分類id

  hits 點擊量

  創建上表,寫出MySQL語句

  2)同樣上述內容管理系統:表comment記錄用戶回復內容,字段如下

  comment_id 回復id

  id 文章id,關聯message表中的id

  comment_content 回復內容

  現通過查詢數據庫需要得到以下格式的文章標題列表,并按照回復數量排序,回復最高的排在最前面

  文章id 文章標題 點擊量 回復數量

  用一個SQL語句完成上述查詢,如果文章沒有回復則回復數量顯示為0

  3) 上述內容管理系統,表category保存分類信息,字段如下

  category_id int(4) not null auto_increment;

  categroy_name varchar(40) not null;

  用戶輸入文章時,通過選擇下拉菜單選定文章分類

  3、實現中文字串截取無亂碼的方法。

  這個首先要考慮字符集的問題,UTF-8下一個漢字占3字節,GBK下一個漢字占2字節.可以自己寫個函數來處理,別人也寫了很多,當然也可以開啟mbstring擴展庫,使用里面的mb_substr()等函數來截取。當截取字符出現亂碼時,是因為漢字被截斷了,可以再字符串尾部連上一個chr(0)

  var $empty = '';

  var $null = NULL;

  var $bool = FALSE;

  var $notSet;

  var $array = array();

  4,Http 和Https的區別

  第一:http是超文本傳輸協議,信息是明文傳輸,https是具有安全性的ssl加密傳輸協議

  第二:http和https使用的是完全不同的連接方式,端口也不一樣,前者80 或者443 第三:http連接很簡單,是無狀態的。https協議是由ssl+http協議構建的可進行加密傳輸,身份認證的網絡協議。

  5.什么方法來加快頁面的加載速度

  01,用到服務器資源時在打開,不用時,立即關閉服務器資源。

  02,數據庫添加索引

  03,頁面可生成靜態

  04,圖片等大文件單獨放在一個服務器

  05,能不查詢數據庫的盡量不去數據取數據,可以放在緩存中。

  6.表單中 get與post提交方法的區別?

  答:get是發送請求HTTP協議通過url參數傳遞進行接收,而post是實體數據,可以通過表單提交大量信息.

  7.echo ,print,print_r 的區別:

  echo 是php語句,無返回值。

  print,print_r是函數,有返回值。

  print() 只能打印出簡單類型變量的值(如int,string) print_r() 可以打印出復雜類型變量的值(如數組,對象) echo 輸出一個或者多個字符串

  8.session與cookie區別

  session與cookie相同:跨頁面、不跨用戶

  session與cookie不相同:

  1、session可以存儲任意類型的數據,但cookie只能存儲字符串

  2、cookie產生在服務器端、存儲在客戶端

  session產生在服務器端、存儲在服務器端

  php常見面試題三

  1.用PHP寫出顯示客戶端IP與服務器IP的代碼:

  echo $_SERVER['REMOTE_ADDR'] //客戶端ip

  echo $_SERVER['SERVER_ADDR'] //服務器端ip

  2、apache+mysql+php實現最大負載的方法

  1) 問的太籠統,生成靜態html頁面,squid反向代理,apache,mysql的負載均衡。

  2) 可以采取數據緩存的方法,我們通常在統計數據的時候,需要在原始數據的基礎上經過計算等一系列操作,才會得到最終的結果,如果每做一個查詢都需要這樣一系列操作,當數據量大時,勢必會帶來很多問題。可以建立一個結果表,寫一個腳本,用crontab定時觸發腳本去原始表取數據,計算,寫入到結果表,前端查詢從結果表取數據,這也是比較常用的一種做法。

  3) 采用分布式,多個apache,多個mysql,其實就是dns負載均衡,dns根據當前用戶解析幾個ip的ping值,將用戶轉移到某一臺最快的服務器,或者平均分配。

  4 )money不是問題的話,可以考慮F5硬件負載均衡!

  5)可以使用Microsoft Windows Server系統的負載均衡設置

  3.數據庫中的事務是什么?

  答:事務(transaction)是作為一個單元的一組有序的數據庫操作。如果組中的所有操作都成功,則認為事務成功,即使只有一個操作失敗,事務也不成功。如果所有操作完成,事務則提交,其修改將作用于所有其他數據庫進程。如果一個操作失敗,則事務將回滾,該事務所有操作的影響都將取消。

  4.1優化MYSQL數據庫的方法。

  1、選擇合適的字段的數據類型

  1)能用數字不用字符串

  2)char、varchar、text 能用varchar不用char

  3)給字段加not null 避免在表中出現NULL關鍵字(default 值)

  2、選擇合適的字段充當主鍵

  1)建議每張表必須有主鍵

  2)用數字類型的字段充當主鍵

  3、拆分表

  1)拆分字段,將文章的標題與內容分開

  2)拆分記錄,將今年的記錄與往年的記錄分開

  4、給字段合理添加索引

  a.格式:

  (普通索引)->

  創建:CREATE INDEX <索引名> ON tablename (索引字段)

  修改:ALTER TABLE tablename ADD INDEX [索引名] (索引字段)

  創表指定索引:CREATE TABLE tablename([...],INDEX[索引名](索引字段)) (唯一索引)->

  創建:CREATE UNIQUE <索引名> ON tablename (索引字段)

  修改:ALTER TABLE tablename ADD UNIQUE [索引名] (索引字段)

  創表指定索引:CREATE TABLE tablename([...],UNIQUE[索引名](索引字段)) (主鍵)->

  它是唯一索引,一般在創建表是建立,格式為:

  CREATA TABLE tablename ([...],PRIMARY KEY[索引字段])

  5、事務處理:

  a.保證數據完整性,例如添加和修改同時,兩者成立則都執行,一者失敗都失敗 mysql_query("BEGIN");

  mysql_query("INSERT INTO customerinfo (name) VALUES ('$name1')";

  mysql_query("SELECT * FROM `orderinfo` where customerid=".$id");

  mysql_query("COMMIT");

  6、鎖定表,優化事務處理:

  a.我們用一個 SELECT 語句取出初始數據,通過一些計算,用 UPDATE 語句將新值更新

49898 主站蜘蛛池模板: 国产一级午夜 | 亚洲电影免费观看国语版 | 一区二区三区在线观看免费 | 中午字幕无线码一区2020 | 免费黄色一级网站 | 欧美一级黄色录相 | 欧美一级片一区 | 成人免费自拍视频 | 国产一级免费在线视频 | 草草在线观看 | 九九热免费视频在线观看 | 国产一级小视频 | 亚洲电影在线观看高清免费 | 亚洲第一激情 | 在线观看国产日韩 | 热re91久久精品国产99热 | 久久草在线看 | 看黄在线 | 亚洲第一综合色 | 欧美日韩在线视频一区二区 | 91短视频在线观看视频 | mmmwww| 宅男噜噜噜66国产在线观看 | 极品美女一级毛片 | 青青草最新网址 | 视频一区二区不卡 | 性爱免费在线视频 | 中文欧美日韩 | 欧美成人一区免费视频 | 中文区中文字幕免费看 | 欧美性激情视频 | 亚洲第一精品在线 | 91美女视频在线 | www久久国产 | 黄色av一区二区三区 | 成人午夜免费国产 | 中文字幕一区久久 | 久久久久久久不卡 | 综合日韩欧美 | 久久99国产精品免费网站 | 免费放黄网站在线播放 |