Yahoo-PHP面试题2


Posted in 面试题 onDecember 06, 2014
1. foo() 與 @foo() 有什麼分別?
2. 你如何替 PHP 的應用程式偵錯?
3. 「===」是什麼?試舉一例「==」是真但「===」是錯。
4. 你會如何定義一個沒有成員函式或特性的類別 myclass?
5. 你如何產生一個 myclass 的物件?
以下是 Matt Wilkin 提供的解答:
1. foo() 與 @foo() 有什麼分別?
foo() 會執行這個函式,任何解譯錯誤、語法錯誤、執行錯誤都會在頁面上顯示出來。
@foo() 在執行這個函式時,會隱藏所有上述的錯誤訊息。
很多應用程式都使用 @mysql_connect() 和 @mysql_query 來隱藏 mysql 的錯誤訊息,我認為這是很嚴重的失誤,因為錯誤不該被隱藏,你必須妥善處理它們,可能的話解決它們。
2. 你如何替 PHP 的應用程式偵錯?
我並不常這樣做,我曾經試過很多不同的偵錯工具,在 Linux 系統中設定這些工具一點也不容易。不過以下我會介紹一個近來頗受注目的偵錯工具。
PHP – Advanced PHP Debugger 或稱 PHP – APD,第一步是執行以下的指令安裝:

pear install apd

安裝後在你的腳本的開頭位置加入以下的語句開始進行偵錯:

apd_set_pprof_trace();

執行完畢,打開以下檔案來查閱執行日誌:
apd.dumpdir
你也可以使用 pprofp 來格式化日誌。
詳細的資料可以參閱 http://us.php.net/manual/en/ref.apd.php。
3. 「===」是什麼?試舉一個「==」是真但「===」是假的例子。
「===」是給既可以送回布爾值「假」,也可以送回一個不是布爾值但卻可以賦與「假」值的函式,strpos() 和 strrpos() 便是其中兩個例子。
問題的第二部份有點困難,想一個「==」是假,但是「===」是真的例子卻很容易,相反的例子卻很少。但我終於找到以下的例子:

1
2
3
4
5
6
7
8



if (strpos("abc", "a") == true)
{
// 這部分永不會被執行,因為 "a" 的位置是 0,換算成布爾值「假」
}
if (strpos("abc", "a") === true)
{
// 這部份會被執行,因為「===」保證函式 strpos() 的送回值不會換算成布爾值.
}

4. 你會如何定義一個沒有成員函式或特性的類別 myclass?

1
2
3
class myclass
{
}
5. 你如何產生一個 myclass 的物件?
$obj = new myclass();
沒有比這個更簡單的了。

Tags in this post...

面试题 相关文章推荐
解释一下抽象方法和抽象类
Aug 27 面试题
群胜软件Java笔试题
Sep 29 面试题
写一个用矩形法求定积分的通用函数
Nov 08 面试题
如何判断一段程序是由C 编译程序还是由C++编译程序编译的
Aug 04 面试题
简述索引存取方法的作用和建立索引的原则
Mar 26 面试题
.NET初级开发工程师面试题(包括Javascript)
Aug 22 面试题
C#面试问题
Jul 29 面试题
介绍一下linux文件系统分配策略
Nov 17 面试题
27个经典Linux面试题及答案,你知道几个?
Jan 10 面试题
WebSphere面试题:在WebSphere里面如何部署一个应用
Aug 02 面试题
什么是servlet
May 08 面试题
J2EE面试题
Mar 14 面试题
Yahoo-PHP面试题1
Jul 20 #面试题
PHP面试题附答案
Nov 28 #面试题
Yahoo的PHP面试题
May 26 #面试题
PHP数据运算类型都有哪些
Nov 05 #面试题
一套PHP的笔试题
May 31 #面试题
新浪网技术部笔试题
Aug 26 #面试题
如何处理简单的PHP错误
Oct 14 #面试题
You might like
PHP实现多服务器session共享之NFS共享的方法
2007/03/16 PHP
基于Discuz security.inc.php代码的深入分析
2013/06/03 PHP
PHP实现的简单sha1加密功能示例
2017/08/27 PHP
ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
2019/03/11 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
jquery ajax执行后台方法
2010/03/18 Javascript
JS预览图像将本地图片显示到浏览器上
2013/08/25 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
jQuery.fn和jQuery.prototype区别介绍
2013/10/05 Javascript
jquery使用ajax实现微信自动回复插件
2014/04/28 Javascript
浅谈jQuery异步对象(XMLHttpRequest)
2014/11/17 Javascript
JavaScript学习笔记之创建对象
2016/03/25 Javascript
EasyUi中的Combogrid 实现分页和动态搜索远程数据
2016/04/01 Javascript
jQuery页面加载初始化的3种方法(推荐)
2016/06/02 Javascript
Google Maps基础及实例解析
2016/08/06 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
vue中v-model动态生成的实例详解
2017/10/27 Javascript
彻底理解Python list切片原理
2017/10/27 Python
使用Python爬了4400条淘宝商品数据,竟发现了这些“潜规则”
2018/03/23 Python
Python绘图实现显示中文
2019/12/04 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
python递归调用中的坑:打印有值, 返回却None
2020/03/16 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
你可能不熟练的十个前端HTML5经典面试题
2018/07/03 HTML / CSS
HTML5 Canvas中使用路径描画二阶、三阶贝塞尔曲线
2015/01/01 HTML / CSS
浅析HTML5中的 History 模式
2017/06/22 HTML / CSS
YSL圣罗兰美妆美国官网:Yves Saint Lauret US
2016/11/21 全球购物
小露珠教学反思
2014/04/30 职场文书
身边的榜样活动方案
2014/08/20 职场文书
内乡县衙导游词
2015/02/05 职场文书
环保建议书范文
2015/09/14 职场文书
怎样写工作总结啊!
2019/06/18 职场文书
OpenCV-Python模板匹配人眼的实例
2021/06/08 Python
mysql定时自动备份数据库的方法步骤
2021/07/07 MySQL