Yahoo-PHP面试题1


Posted in 面试题 onJuly 20, 2016
1. 以下哪一句不會把 John 新增到 users 陣列?
* $users[] = ‘john’;
* array_add($users,’john’);
* array_push($users,‘john’);
* $users ||= ‘john’;

2. sort()、assort()、和 ksort() 有什麼分別?它們分別在什麼情況下使用?
3. 以下的代碼會產生什麼?為什麼?
$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;

4. 一個 reference 跟一個正規的變量有什麼分別?如何 pass by reference?在什麼情況下我們需要這樣做?

5. 哪一些函式可以在現正執行的腳本中加入函式庫?

以下是 Matt Wilkin 提供的解答:

1. 以下哪一句不會把 John 新增到 users 陣列?

* $users[] = ‘john’;
成功把 John 新增到陣列 users。
* array_add($users,’john’);
函式 array_add() 無定義。
* array_push($users,‘john’);
成功把 John 新增到陣列 users。
* $users ||= ‘john’;
語法錯誤。

2. sort()、assort()、和 ksort() 有什麼分別?它們分別在什麼情況下使用?

* sort()
根據陣列中元素的值,以英文字母順序排序,索引鍵會由 0 到 n-1 重新編號。主要是當陣列索引鍵的值無關疼癢時用來把陣列排序。
* assort()
PHP 沒有 assort() 函式,所以可能是 asort() 的筆誤。
asort()
與 sort() 一樣把陣列的元素按英文字母順序來排列,不同的是所有索引鍵都獲得保留,特別適合替聯想陣列排序。
* ksort()
根據陣列中索引鍵的值,以英文字母順序排序,特別適合用於希望把索引鍵排序的聯想陣列。

3. 以下的代碼會產生什麼?為什麼? $num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;

由於函式 multiply() 沒有指定 $num 為全域變量(例如 global $num 或者 $_GLOBALS[num]),所以 $num 的值是 10。

4. 一個 reference 跟一個正規的變量有什麼分別?如何 pass by reference?在什麼情況下我們需要這樣做?

Reference 傳送的是變量的地址而非它的值,所以在函式中改變一個變量的值時,整個應用都見到這個變量的新值。
一個正規變量傳送給函式的是它的值,當函式改變這個變量的值時,只有這個函式才見到新值,應用的其他部分仍然見到舊值。

$myVariable = “its’ value”;
Myfunction(&$myVariable); // 以 reference 傳送參數

以 reference 傳送參數給函式,可以使函式改變了的變量,即使在函式結束後仍然保留新值。

5. 哪一些函式可以用來在現正執行的腳本中插入函式庫?
對這道題目不同的理解會有不同的答案,我的第一個想法是插入 PHP 函式庫不外乎 include()、include_once()、require()、require_once(),但細心再想,「函式庫」也應該包括 com 物件和 .net 函式庫,所以我們的答案也要分別包括 com_load 和 dotnet_load,下次有人提起「函式庫」的時候,別忘記這兩個函式。

Tags in this post...

面试题 相关文章推荐
PHP如何删除一个Cookie值
Nov 15 面试题
上海方立数码笔试题
Oct 18 面试题
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
Dec 07 面试题
如何查询Oracle数据库中已经创建的索引
Oct 11 面试题
广州迈达威.net面试题目
Mar 10 面试题
深圳-东方伟业笔试部分
Feb 11 面试题
.NET现在共支持多少种语言
Feb 26 面试题
Internet主要有哪些网络群组成
Dec 24 面试题
27个经典Linux面试题及答案,你知道几个?
Mar 11 面试题
外企测试工程师面试题
Feb 01 面试题
Static Nested Class 和 Inner Class的不同
Nov 28 面试题
介绍JAVA 中的Collection FrameWork(及如何写自己的数据结构)
Oct 31 面试题
PHP面试题附答案
Nov 28 #面试题
Yahoo的PHP面试题
May 26 #面试题
PHP数据运算类型都有哪些
Nov 05 #面试题
一套PHP的笔试题
May 31 #面试题
新浪网技术部笔试题
Aug 26 #面试题
如何处理简单的PHP错误
Oct 14 #面试题
PHP面试题及答案二
May 23 #面试题
You might like
php完全过滤HTML,JS,CSS等标签
2009/01/16 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
关于svn冲突的解决方法
2013/06/21 PHP
php smarty truncate UTF8乱码问题解决办法
2014/06/13 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错
2015/12/07 PHP
从性能方面考虑PHP下载远程文件的3种方法
2015/12/29 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
简单的前端js+ajax 购物车框架(入门篇)
2011/10/29 Javascript
深入理解JavaScript系列(12) 变量对象(Variable Object)
2012/01/16 Javascript
圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现
2012/12/27 Javascript
jquery.validate的使用说明介绍
2013/11/12 Javascript
javascript操作referer详细解析
2014/03/10 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
浅谈javascript alert和confirm的美化
2016/12/15 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
Javascript地址引用代码实例解析
2020/02/25 Javascript
Linux中Python 环境软件包安装步骤
2016/03/31 Python
python实现应用程序在右键菜单中添加打开方式功能
2017/01/09 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
python创建文件备份的脚本
2018/09/11 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
2019/07/03 Python
python GUI图形化编程wxpython的使用
2019/07/19 Python
用python3读取python2的pickle数据方式
2019/12/25 Python
python add_argument()用法解析
2020/01/29 Python
Cpython解释器中的GIL全局解释器锁
2020/11/09 Python
HTML5声音录制/播放功能的实现代码
2018/05/03 HTML / CSS
Microsoft Advertising美国:微软搜索广告
2019/05/01 全球购物
班级团队活动方案
2014/08/14 职场文书
意外伤害赔偿协议书范本
2014/09/28 职场文书
涨工资申请书应该怎么写?
2019/07/08 职场文书