电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHP 程序員面試常問的問題

瀏覽:11日期:2023-11-24 18:01:52

1. Include 與 require的區別,require和require_once的效率哪個高?

Php在遇到include時就解釋一次,如果頁面中出現10次include,php就解釋10次,而php遇到require時只解釋一次,即使頁面出現多次require也只解釋一次,因此require的執行表率比include高。

Php使用require包含文件時將被包含的文件當成當前文件的一個組成部分,如果被包含的文件中有語法錯誤或者被包含的文件不存在,則php腳本將不再執行,并提示錯誤。

Php使用include包含文件時相當于指定了這個文件的路徑,當被包含的文件有語法錯誤或者被包含的文件不存在時給出警告,不影響本身腳本的運行。

Include在包含文件時可以判斷文件是否包含,而require則不管任何情況都包含進來。

Require的效率比require_once的效率更高,因為require_once在包含文件時要進行判斷文件是否已經被包含。

2. Cookie和session的區別,禁止了cookie后session能正常使用嗎?session的缺點是什么?session在服務器端是存在哪里的?是共有的還是私有的?

COOKIE保存在客戶端,用戶通過手段可以進行修改,不安全,單個cookie允許的最大值是3k。而SESSION保存在服務器端,相對比較安全,大小沒有限制。禁用了cookie之session不能正常使用。

Session的缺點:保存在服務器端,每次讀取都從服務器進行讀取,對服務器有資源消耗。

Session保存在服務器端的文件或數據庫中,默認保存在文件中,文件路徑由php配置文件的session.save_path指定。

Session文件是公有的。

3. 怎么防止sql注入?

1、過濾掉一些常見的數據庫操作關鍵字:select,insert,update,delete,and,*等

或者通過系統函數:addslashes(需要被過濾的內容)來進行過濾。

2、在PHP配置文件中

Register_globals=off;設置為關閉狀態 //作用將注冊全局變量關閉。

比如:接收POST表單的值使用$_POST[’user’],如果將register_globals=on;直接使用$user可以接收表單的值。

3、SQL語句書寫的時候盡量不要省略小引號(tab鍵上面那個)和單引號

4、提高數據庫命名技巧,對于一些重要的字段根據程序的特點命名,取不易被猜到的

5、對于常用的方法加以封裝,避免直接暴漏SQL語句

6、開啟PHP安全模式

Safe_mode=on;

7、打開magic_quotes_gpc來防止SQL注入

Magic_quotes_gpc=off;默認是關閉的,它打開后將自動把用戶提交的sql語句的查詢進行轉換,把’轉為’,這對防止sql注入有重大作用。

因此開啟:magic_quotes_gpc=on;

8、控制錯誤信息

關閉錯誤提示信息,將錯誤信息寫到系統日志。

9、使用mysqli或pdo預處理。

4. 數據庫索引有幾類,分別是什么?什么時候該用索引

 普通索引、主鍵索引、唯一索引

并非所有的數據庫都以相同的方式使用索引,作為通用規則,只有當經常查詢列中的數據時才需要在表上創建索引。

5. 引用傳值和非引用傳值的區別,什么時候該用引用傳值?什么時候該用非引用傳值?

按值傳遞:函數范圍內對值的改變在函數外都會被忽略。

按引用傳遞:函數范圍內對值的任何改變在函數外也將反應出這些修改。

按值傳遞時,php必須復制值,如果操作的是大型的對象和字符串,這將是一個代價很大的操作。按引用傳遞不需要復制值,因此對性能的提高有好處。

當需要在函數內改變源變量的值時用引用傳遞,如果不想改變原變量的值用傳值。

6. 寫幾個魔術方法并說明作用?

__call()當調用不存在的方法時會自動調用的方法

__autoload()在實例化一個尚未被定義的類是會自動調用次方法來加載類文件

__set()當給未定義的變量賦值時會自動調用的方法

__get()當獲取未定義變量的值時會自動調用的方法

__construct()構造方法,實例化類時自動調用的方法

__destroy()銷毀對象時自動調用的方法

__unset()當對一個未定義變量調用unset()時自動調用的方法

__isset()當對一個未定義變量調用isset()方法時自動調用的方法

__clone()克隆一個對象

__tostring()當輸出一個對象時自動調用的方法

7. $_REQUEST、$_POST、$_GET、$_COOKIE、$_SESSION、$_FILE的意思是什么?

它們都是PHP預定義變量。

$_REQUEST用來獲取post或get方式提交的值

$_POST用來獲取post方式提交的值

$_GET用來獲取get方式提交的值

$_COOKIE用來獲取cookie存儲的值

$_SESSION用來獲取session存儲的值

$_FILE用來獲取上傳文件表單的值

8. 數組中下標最好是什么類型的,為什么?

數組的下標最好是數字類型的,數字類型的處理速度快。

9. ++i和i++哪一個效率高,為什么?

++i效率比i++的效率更高,因為++i少了一個返回i的過程。

10.magic_quotes_gpc()、magic_quotes_runtime()的意思是什么?

Magic_quotes_gpc()是php配置文件中的,如果設置為on則會自動POST,GET,COOKIE中的字符串進行轉義,在’之前加

Magic_quotes_runtime()是php中的函數,如果參數為true則會數據庫中取出來的單引號、雙引號、反斜線自動加上反斜杠進行轉義。

11.Echo()、print()、print_r()的區別?

Echo() 是PHP語法,可以輸出多個值,不能輸出數組。

Print() 是php的語言結構,可以輸出單個簡單類型的變量值。

Print_r() 是php函數,可以打印出復雜類型變量的值,如數組,對象。

12.談談你對Mvc的認識

MVC是一種設計模式,強制使輸入、處理、輸出分開,MVC的三個核心部分:M模型,V視圖,C控制器。

視圖就是用戶看到并與之交互的界面。

模型就是程序的數據業務規則。

控制器接收用戶的數組調用模型和視圖去完成用戶需求。

使用MVC的優點:低耦合、高重用性、較低的生命周期成本、快速開發部署、可維護性、可擴展性,有利于軟件工程化管理。

MVC的缺點:沒有明確的定義,完全理解并不容易。小型項目不適合用MVC。

13.框架中什么是單一入口和多入口,單一入口的優缺點

多入口就是通過訪問不同的文件來完成用戶請求。

單一入口只web程序所有的請求都指向一個腳本文件的。

單一入口更容易控制權限,方便對http請求可以進行安全性檢查。

缺點:URL看起來不那么美觀,特別是對搜索引擎來說不友好。

14.打印一個用‘.’鏈接的字符串時候,還可以用什么代替‘.’鏈接效率更高些?

可以用,代替.,效率更高。

15.提示類型200、404、502是什么意思?

200是請求成功,404是文件未找到,502是服務器內部錯誤。

16.編寫一個自定義函數提取這段路徑的的后綴名。

“Www/hello/test.php.html?a=3&b=4”

Function geturltype($url){

$info=parse_url($url);

Return end(explode(’.’,$info[’path’]));

}

17.你對Memcach的理解,優點有哪些?

Memcache是一種緩存技術,在一定的時間內將動態網頁經過解析之后保存到文件,下次訪問時動態網頁就直接調用這個文件,而不必在重新訪問數據庫。使用memcache做緩存的好處是:提高網站的訪問速度,減輕高并發時服務器的壓力。

Memcache的優點:穩定、配置簡單、多機分布式存儲、速度快

標簽: PHP
相關文章:
主站蜘蛛池模板: 低压载波电能表-单相导轨式电能表-华邦电力科技股份有限公司-智能物联网综合管理平台 | 罗氏牛血清白蛋白,罗氏己糖激酶-上海嵘崴达实业有限公司 | 口信网(kousing.com) - 行业资讯_行业展会_行业培训_行业资料 | 东莞市踏板石餐饮管理有限公司_正宗桂林米粉_正宗桂林米粉加盟_桂林米粉加盟费-东莞市棒子桂林米粉 | IP检测-检测您的IP质量| 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 高低温万能试验机-复合材料万能试验机-馥勒仪器 | 智能门锁电机_智能门锁离合器_智能门锁电机厂家-温州劲力智能科技有限公司 | 变色龙云 - 打包app_原生app_在线制作平台_短链接_ip查询 | 软文世界-软文推广-软文营销-新闻稿发布-一站式软文自助发稿平台 | 耐磨焊丝,堆焊焊丝,耐磨药芯焊丝,碳化钨焊丝-北京耐默公司 | 荣事达手推洗地机_洗地机厂家_驾驶式扫地机_工业清洁设备 | 北京律师咨询_知名专业北京律师事务所_免费法律咨询 | 北京公积金代办/租房发票/租房备案-北京金鼎源公积金提取服务中心 | 北京浩云律师事务所-法律顾问_企业法务_律师顾问_公司顾问 | 直线模组_滚珠丝杆滑台_模组滑台厂家_万里疆科技 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 | 100国际学校招生 - 专业国际学校择校升学规划 | 橡胶弹簧|复合弹簧|橡胶球|振动筛配件-新乡市永鑫橡胶厂 | 机房监控|动环监控|动力环境监控系统方案产品定制厂家 - 迈世OMARA | 香港新时代国际美容美发化妆美甲培训学校-26年培训经验,值得信赖! | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | 防爆电机-高压防爆电机-ybx4电动机厂家-河南省南洋防爆电机有限公司 | 温控器生产厂家-提供温度开关/热保护器定制与批发-惠州市华恺威电子科技有限公司 | 定量包装秤,吨袋包装称,伸缩溜管,全自动包装秤,码垛机器人,无锡市邦尧机械工程有限公司 | 不锈钢管件(不锈钢弯头,不锈钢三通,不锈钢大小头),不锈钢法兰「厂家」-浙江志通管阀 | 展厅设计公司,展厅公司,展厅设计,展厅施工,展厅装修,企业展厅,展馆设计公司-深圳广州展厅设计公司 | 动物解剖台-成蚊接触筒-标本工具箱-负压实验台-北京哲成科技有限公司 | 广州市哲铭油墨涂料有限公司,水性漆生产研发基地 | 展厅设计-展馆设计-专业企业展厅展馆设计公司-昆明华文创意 | ERP企业管理系统永久免费版_在线ERP系统_OA办公_云版软件官网 | 广州/东莞小字符喷码机-热转印打码机-喷码机厂家-广州瑞润科技 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 山东臭氧发生器,臭氧发生器厂家-山东瑞华环保设备 | PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | 软启动器-上海能曼电气有限公司| 南京雕塑制作厂家-不锈钢雕塑制作-玻璃钢雕塑制作-先登雕塑厂 | 山东氧化铁红,山东铁红-淄博科瑞化工有限公司 | crm客户关系管理系统,销售管理系统,crm系统,在线crm,移动crm系统 - 爱客crm | 北京康百特科技有限公司-分子蒸馏-短程分子蒸馏设备-实验室分子蒸馏设备 |