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

面试题 相关文章推荐
一套PHP的笔试题
May 31 面试题
Java如何格式化日期
Aug 07 面试题
什么造成了Java里面的异常
Apr 24 面试题
Oracle的内存结构(Memory structures)
Jun 10 面试题
.NET程序员的数据库面试题
Oct 10 面试题
STP协议的主要用途是什么?为什么要用STP
Dec 20 面试题
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
Dec 12 面试题
西安启天科技有限公司网络工程师面试题笔试题
Jun 12 面试题
编程输出如下图形
Nov 24 面试题
同步和异步有何异同,在什么情况下分别使用他们
Apr 09 面试题
J2EE是技术还是平台还是框架
Aug 14 面试题
在DELPHI中调用存储过程和使用内嵌SQL哪种方式更好
Nov 22 面试题
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 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
2013/09/28 PHP
PHP基于GD库的缩略图生成代码(支持jpg,gif,png格式)
2014/06/19 PHP
php创建session的方法实例详解
2015/01/27 PHP
JS控制表格隔行变色
2006/06/26 Javascript
IE和Firefox下event事件杂谈
2009/12/18 Javascript
javascript之典型高阶函数应用介绍二
2013/01/10 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
js中的referrer返回上一页使用介绍
2013/09/26 Javascript
jquery.post用法示例代码
2014/01/03 Javascript
js/jquery解析json和数组格式的方法详解
2014/01/09 Javascript
动态显示可输入的字数提示还可以输入的字数
2014/04/01 Javascript
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
JS实现回到页面顶部动画效果的简单实例
2016/05/24 Javascript
微信小程序 Button 组件详解及简单实例
2017/01/10 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
2017/06/22 Javascript
Vue.js 中的 v-cloak 指令及使用详解
2018/11/19 Javascript
Vue项目实现换肤功能的一种方案分析
2019/08/28 Javascript
js实现秒表计时器
2019/12/16 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
python递归实现快速排序
2018/08/18 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
2018/09/17 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
2019/06/18 Python
Python3之不使用第三方变量,实现交换两个变量的值
2019/06/26 Python
Keras设定GPU使用内存大小方式(Tensorflow backend)
2020/05/22 Python
pytorch加载自己的图像数据集实例
2020/07/07 Python
广州地球村科技数据库题目
2016/04/25 面试题
军训生自我鉴定范文
2013/12/27 职场文书
校园环保广播稿(3篇)
2014/09/15 职场文书
单位接收函范文
2015/01/30 职场文书
不知如何爱孩子,这些方法教会您
2019/08/06 职场文书
nginx搭建NFS网络文件系统
2022/04/14 Servers