Yahoo-PHP面试题3


Posted in 面试题 onJanuary 14, 2012
1. 在一個類別內如何存取這個類別的特性及變改它的值?
2. include 和 include_once 有什麼分別?require 又如何?
3. 以下哪一個函式可以把瀏覽器轉向到另一個頁面?
* redir()
* header()
* location()
* redirect()
4. 以下哪一個函式可以用來開啟檔案以便讀/寫?
* fget()
* file_open()
* fopen()
* open_file()
5. mysql_fetch_row() 和 mysql_fetch_array() 有什麼分別?
6. 下面的代碼用來做什麼?請解釋。

$date=’08/26/2003′;
print ereg_replace(”([0-9]+)/([0-9]+)/([0-9]+)”,”\\2/\\1/\\3″,$date);

以下是 Matt Wilkin 提供的解答:

1. 在一個類別內如何存取這個類別的特性及變改它的值?
使用語句:$this->propertyName,例如:

class myclass
{
private $propertyName;
public function __construct()
{
$this->propertyName = “value”;
}
}

2. include 和 include_once 有什麼分別?require 又如何?
三者都是用來在腳本中插入其他檔案,視乎 url_allow_fopen 是否核准,這個檔案可以從系統內部或外部取得。但他們之間也有微細的分別:
include():這個函式容許你在腳本中把同一個檔案插入多次,若果檔案不存在,它會發出系統警告並繼續執行腳本。
include_once():它跟 include() 的功能相似,正如它的名字所示,在腳本的執行期間,有關檔案只會被插入一次。
require():跟 include() 差不多,它也是用來在腳本中插入其他檔案,但若果檔案不存在,它會發出系統警告,這個警告會引致致命錯誤令腳本中止執行。
3. 以下哪一個函式可以把瀏覽器轉向到另一個頁面?
* redir()
這不是一個 PHP 函式,會引致執行錯誤。
* header()
這個是正確答案,header() 用來插入卷頭資料,可以用來使瀏覽器轉向到另一個頁面,例如:

header(”Location: http://www.search-this.com/”);

* location()
這不是一個 PHP 函式,會引致執行錯誤。
* redirect()
這不是一個 PHP 函式,會引致執行錯誤。
4. 以下哪一個函式可以用來開啟檔案以便讀/寫?
* fget()
這不是一個 PHP 函式,會引致執行錯誤。
* file_open()
這不是一個 PHP 函式,會引致執行錯誤。
* fopen()
這是正確答案,fopen() 可以用來開啟檔案以便讀/寫,事實上這個函式還有很多選項,詳細資料請參閱 php.net。
* open_file()
這不是一個 PHP 函式,會引致執行錯誤。
5. mysql_fetch_row() 和 mysql_fetch_array() 有什麼分別?
mysql_fetch_row() 把數據庫的一列儲存在一個以零為基數的陣列中,第一欄在陣列的索引 0,第二欄在索引 1,如此類推。mysql_fetch_assoc() 把數據庫的一列儲存在一個關聯陣列中,陣列的索引就是欄位名稱,例如我的數據庫查詢送回「first_name」、「last_name」、 「email」三個欄位,陣列的索引便是「first_name」、「last_name」和「email」。mysql_fetch_array() 可以同時送回 mysql_fetch_row() 和 mysql_fetch_assoc() 的值。
6. 下面的代碼用來做什麼?請解釋。

$date=’08/26/2003′;
print ereg_replace(”([0-9]+)/([0-9]+)/([0-9]+)”,”\\2/\\1/\\3″,$date);

這是把一個日期從 MM/DD/YYYY 的格式轉為 DD/MM/YYYY 格式。我的一個好朋友告訴我可以把這個正規表達式拆解為以下的語句,對於如此簡單的表示是來說其實無須拆解,純粹為了解說的方便:

// 對應一個或更多 0-9,後面緊隨一個斜號
$regExpression = “([0-9]+)/”;
// 應一個或更多 0-9,後面緊隨另一個斜號
$regExpression .= “([0-9]+)/”;
// 再次對應一個或更多 0-9
$regExpression .= “([0-9]+)”;

至於 \\2/\\1/\\3 則是用來對應括號,第一個括號對的是月份,第二個括號對應的是日期,第三個括號對應的是年份

Tags in this post...

面试题 相关文章推荐
SQL面试题
Apr 30 面试题
铭万公司.net面试题笔试题
Jul 20 面试题
关于递归的一道.NET面试题
May 12 面试题
如果一个类实现了多个接口但是这些接口有相同的方法名将会怎样
Jun 16 面试题
C#中有没有静态构造函数,如果有是做什么用的?
Jun 04 面试题
init进程的作用
Apr 12 面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jul 11 面试题
广州足迹信息技术有限公司Java软件工程师试题
Feb 15 面试题
中间件分为哪几类
Sep 18 面试题
MIS软件工程师的面试题
Apr 22 面试题
EJB的几种类型
Aug 15 面试题
Ajax的工作原理
Dec 04 面试题
Yahoo-PHP面试题2
Dec 06 #面试题
Yahoo-PHP面试题1
Jul 20 #面试题
PHP面试题附答案
Nov 28 #面试题
Yahoo的PHP面试题
May 26 #面试题
PHP数据运算类型都有哪些
Nov 05 #面试题
一套PHP的笔试题
May 31 #面试题
新浪网技术部笔试题
Aug 26 #面试题
You might like
浅谈PHP的$_SERVER[SERVER_NAME]
2017/02/04 PHP
非常不错的一个javascript 类
2006/11/07 Javascript
lib.utf.js
2007/08/21 Javascript
javascript实现面向对象类的功能书写技巧
2010/03/07 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
jQuery中extend函数的实现原理详解
2015/02/03 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
js实现异步循环实现代码
2016/02/16 Javascript
Javascript中call,apply,bind方法的详解与总结
2016/12/12 Javascript
jQuery内存泄露解决办法
2016/12/13 Javascript
利用Node.js+Koa框架实现前后端交互的方法
2017/02/27 Javascript
JavaScript中使用参数个数实现重载功能
2017/09/01 Javascript
Angular实现的简单查询天气预报功能示例
2017/12/27 Javascript
axios 处理 302 状态码的解决方法
2018/04/10 Javascript
JS实现点击按钮可实现编辑功能
2018/07/03 Javascript
layDate日期控件使用方法详解
2018/11/15 Javascript
VUE组件中的 Drawer 抽屉实现代码
2019/08/06 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
2020/11/17 Javascript
Python中用于去除空格的三个函数的使用小结
2015/04/07 Python
Python numpy 点数组去重的实例
2018/04/18 Python
Django添加KindEditor富文本编辑器的使用
2018/10/24 Python
Pyecharts绘制全球流向图的示例代码
2020/01/08 Python
通过实例了解Python str()和repr()的区别
2020/01/17 Python
python2 对excel表格操作完整示例
2020/02/23 Python
python字符串常用方法及文件简单读写的操作方法
2020/03/04 Python
Python callable内置函数原理解析
2020/03/05 Python
全球知名鞋履品牌授权零售商:Journeys
2016/09/17 全球购物
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
阿波罗盒子:Apollo Box
2017/08/14 全球购物
掌上明珠Java程序员面试总结
2016/02/23 面试题
大学生护理专业自荐信
2013/10/03 职场文书
临床医师专业个人自我评价
2014/01/08 职场文书
2015年元旦主持词开场白
2014/12/14 职场文书
领导工作表现评语
2015/01/04 职场文书
领导欢迎词致辞
2015/01/23 职场文书