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...

面试题 相关文章推荐
联想C++笔试题
Jun 13 面试题
函数指针的定义是什么
Aug 14 面试题
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
May 23 面试题
SQL Server里面什么样的视图才能创建索引
Apr 17 面试题
ddl,dml和dcl的含义
May 08 面试题
介绍一下gcc特性
Jan 20 面试题
Linux的文件类型
Mar 07 面试题
捷科时代的软件测试笔试题
Nov 09 面试题
性能测试工程师的面试题
Feb 20 面试题
面向对象设计的原则是什么
Feb 13 面试题
介绍一下EJB的体系结构
Aug 01 面试题
创立科技Java面试题
Nov 29 面试题
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
在Zeus Web Server中安装PHP语言支持
2006/10/09 PHP
怎样才能成为PHP高手?学会“懒惰”的编程
2006/12/05 PHP
php伪静态之APACHE篇
2014/06/02 PHP
php删除指定目录的方法
2015/04/03 PHP
PHP session垃圾回收机制实例分析
2019/06/28 PHP
PHP与SQL语句写一句话木马总结
2019/10/11 PHP
用js读、写、删除Cookie代码分享及详细注释说明
2014/06/05 Javascript
nodejs URL模块操作URL相关方法介绍
2015/03/03 NodeJs
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
javascript结合Flexbox简单实现滑动拼图游戏
2016/02/18 Javascript
Js类的静态方法与实例方法区分及jQuery拓展的两种方法
2016/06/03 Javascript
BootStrap table表格插件自适应固定表头(超好用)
2016/08/24 Javascript
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
2018/01/02 Javascript
解决vue 界面在苹果手机上滑动点击事件等卡顿问题
2018/11/27 Javascript
[46:47]完美世界DOTA2联赛PWL S2 FTD vs Magma 第二场 11.20
2020/11/23 DOTA
Python中统计函数运行耗时的方法
2015/05/05 Python
Python自动扫雷实现方法
2015/07/25 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
Python使用pylab库实现绘制直方图功能示例
2018/06/01 Python
python实现下载pop3邮件保存到本地
2018/06/19 Python
PyCharm中配置PySide2的图文教程
2020/06/18 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
Python3爬虫中pyspider的安装步骤
2020/07/29 Python
django使用graphql的实例
2020/09/02 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
CSS3属性box-shadow使用指南
2014/12/09 HTML / CSS
大专生工程监理求职信
2013/10/04 职场文书
吃空饷专项治理工作实施方案
2014/03/04 职场文书
婚庆司仪主持词
2014/03/15 职场文书
学习之星事迹材料
2014/05/17 职场文书
好习惯伴我成长演讲稿
2014/05/21 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
2015年度质量工作总结报告
2015/04/27 职场文书
2015年预防青少年违法犯罪工作总结
2015/05/22 职场文书
初中运动会闭幕词范本3篇
2019/12/09 职场文书