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

面试题 相关文章推荐
编写类String 的构造函数、析构函数和赋值函数
Sep 09 面试题
经典c++面试题二
Aug 14 面试题
System.Array.CopyTo()和System.Array.Clone()有什么区别
Jun 20 面试题
应届生.NET方向面试题
May 23 面试题
TCP协议通讯的过程和步骤是什么
Oct 18 面试题
介绍一下linux文件系统分配策略
Nov 17 面试题
说一下Linux下有关用户和组管理的命令
Jan 04 面试题
介绍一下write命令
Sep 24 面试题
Linux管理员面试经常问道的相关命令
Dec 12 面试题
大唐面试试题(CPU,UNIX等等)
Jan 11 面试题
Ruby中的保护方法和私有方法与一般面向对象程序设计语言的一样吗
May 01 面试题
如何将一个描述日期或日期/时间的字符串转换为一个Date对象
Oct 13 面试题
PHP面试题附答案
Nov 28 #面试题
Yahoo的PHP面试题
May 26 #面试题
PHP数据运算类型都有哪些
Nov 05 #面试题
一套PHP的笔试题
May 31 #面试题
新浪网技术部笔试题
Aug 26 #面试题
如何处理简单的PHP错误
Oct 14 #面试题
PHP面试题及答案二
May 23 #面试题
You might like
解析htaccess伪静态的规则
2013/06/18 PHP
PHP提示Cannot modify header information - headers already sent by解决方法
2014/09/22 PHP
php给图片加文字水印
2015/07/31 PHP
老生常谈PHP中的数据结构:DS扩展
2017/07/17 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
js简单实现标签云效果实例
2015/08/06 Javascript
jquery实现在网页指定区域显示自定义右键菜单效果
2015/08/25 Javascript
第一次接触神奇的Bootstrap表单
2016/07/27 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
JavaScript判断浏览器对CSS3属性是否支持的多种方法
2016/11/13 Javascript
Bootstrap fileinput文件上传组件使用详解
2017/06/06 Javascript
详解设置Webstorm 利用babel将ES6自动转码成ES5
2017/12/20 Javascript
使用百度地图实现地图网格的示例
2018/02/06 Javascript
在vue-cli项目中使用bootstrap的方法示例
2018/04/21 Javascript
简单的三步vuex入门
2018/05/20 Javascript
Vue数字输入框组件示例代码详解
2020/01/15 Javascript
Python判断Abundant Number的方法
2015/06/15 Python
Python的“二维”字典 (two-dimension dictionary)定义与实现方法
2016/04/27 Python
python3中set(集合)的语法总结分享
2017/03/24 Python
快速了解python leveldb
2018/01/18 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
Django filter动态过滤与排序实现过程解析
2020/11/26 Python
怎样实现H5+CSS3手指滑动切换图片的示例代码
2019/05/05 HTML / CSS
喜诗官方在线巧克力店:See’s Candies
2017/01/01 全球购物
微软新西兰官方网站:Microsoft New Zealand
2018/08/17 全球购物
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
Ruby如何进行文件操作
2014/07/17 面试题
《纸船和风筝》教学反思
2014/02/15 职场文书
一年级班主任感言
2014/03/08 职场文书
教师考察材料范文
2014/06/03 职场文书
解除劳动合同协议书范本
2014/09/13 职场文书
2015年秋季运动会加油稿
2015/07/22 职场文书
使用 Apache Dubbo 实现远程通信(微服务架构)
2022/02/12 Servers
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL
Golang Web 框架Iris安装部署
2022/08/14 Python