首页资源分类应用技术工业控制 > PHP开发工程师面试题

PHP开发工程师面试题

已有 445023个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:php面试程序经验

    分    享:

    文档简介

    列出了php开发工程师面试可能会遇到的问题,比较有帮助。

    文档预览

    PHP开发工程师面试题 标签: 杂谈 分类: php 1. 下列哪一句不能将'john'添加到数组$user? 答:BD A. $user[] = 'john'; B. array_add($user, 'john'); C. array_push($user, 'john'); D. $user ||= 'john'; 2. 比较sort(), asort(), ksort()三个函数的用法以及使用环境。 答: sort -- 将数组的值由a-z重排,并自动替换索引从0...结束 asort --- 此函数将数组的元素由a-z重新排列,且保持原先索引值和元素的对应关系,这个函数主要是用于 需要将数组的元素重新排列。这个函数比较常用。 ksort --- 此函数将数组依照索引值由a-z重新排列 例子: 对array('a'=>111, '9'=>"orange", 6=>2, "apple");排序。 sort则返回: Array ( [0] => apple [1] => orange [2] => 2 [3] => 111 )值由a-z重排,索引也变了。 asort则返回:Array ( [10] => apple [9] => orange [6] => 2 [a] => 111 )值由a-z重排,保持索引以应 ksort则返回: Array ( [a] => 111 [6] => 2 [9] => orange [10] => apple )索引值由a-z重新排列,保持索 引以应 3. 以下代码输出什么内容, 为何。 $num = 10; function foo(){ $num = $num * 10; } foo(); echo $num; 答: 结果为10.因为foo()中的$num是访问不到函数外的变量的。要想访问加上global $num;结果就成100了 。 4. 引用和普通变量的区别。 答:普通变量是开辟了一块新的存储空间,引用是直接指向其他的存储空间。 如: $num = 10; function foo($num){ $num = $num * 10; } foo($num); echo $num; 调foo($num);函数时以变量传递,则返回10; 如果改成引用传递,返回100; $num = 10; function foo(&$num){ $num = $num * 10; } foo($num); echo $num; 5. 加载类库的方法。 答: function __autoload($class){ require_once("./lib/".$class.'.php'); } 6. foo()和@foo()的区别。 答:加上@符号会屏蔽报错提示。 如下: $num = 10; function foo(&$num){ $num = $num / 0; } foo($num); echo $num; 大家都知道除数不能为0。如果加上@符号后就没有Warning: Division by zero 7. 你平时如何调试PHP代码。 答:用echo打出调试或用exit调试。再加上火狐浏览器调。 8. === 的作用是什么?举一个例子,使用 == 返回true,但是使用 === 返回false。 答:=== 的作用是比较变量的值还比较变量的类型。==只比较值。 如下: $str = '111'; if($str==111){//如果改成===则返回"失败了"; echo "成功了"; }else{ echo "失败了"; } 9. 声明一个不含方法和属性的类。 答:class Db {} 10. 创建一个对象myclass的实例。 答:$db = new myclass(); 11. 从类的内部访问或者设置属性。 答: class DB{ private $username; //用户名 private $userpwd; //密码 public function test(){ $this->username='root';//给变量赋值 self::test2();//相当于$this->test2();//调用本类test2方法 //parent::test2();这样的话就调用了父类的test2方法 } public function test2(){ } } 12. include与include_once的区别和联系,以及include与require的区别和联系。 答:include与include_once区别是:用include_once如果该文件中的代码已经被包含了,则不会再次包含。如同此语句名字暗示 的那样,只会包含一次。 include() 产生一个警告而 require() 则导致一个致命错误。换句话说,如果想在遇到丢失文件时停止处理页面就用 require()。include() 就不是这样,脚本会继续运行。 13. 使用什么函数重定向浏览器请求。 答:header("Location: http://hi.baidu.com/woaidelphi/blog"); 14. 打开一个文件供读写。 答:fopen("d:/test.txt","r+");//r+读写方式打开,将文件指针指向文件头。'w+'读写方式打开,将文件指针指向文件头并 将文件大小截为零。如果文件不存在则尝试创建之。 'a+'读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之 15. mysql_fetch_row和mysql_fetch_array的区别。 答:mysql_fetch_row -- 从结果集中取得一行作为枚举数组 mysql_fetch_array -- 从结果集中取得一行作为关联数组,或数字数组,或二者兼有 //MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH 16. 一个ereg_replace的理解。里面涉及正则捕捉和引用。 答:ereg_replace -- 替换正则表达式 string ereg_replace ( string pattern, string replacement, string string ) 本函数在 string 中扫描与 pattern 匹配的部分,并将其替换为 replacement。 返回替换后的字符串。 “里面涉及正则捕捉和引用。”这句话不懂。 17. 写一个正则表达式,过滤所有的HTML代码。 如下: $str = "星空男孩大家好< /b>一起学习。共同进步。"; echo preg_replace("/<[^>]+>/i",'',$str); 18. 比较PHP与Perl的array和hash 答:http://hi.baidu.com/sujun/blog/item/85a4c8131c06432bdd54010b.html上面写的很 好。 19. How to get around stateless nature of HTTP using PHP ? (我理解错误) 答:呵呵,不知。 20. GD是用来做什么的。 答:GD库是用来做图的。比如可以做验证码。 21. 用PHP写出几个方法用来输出HTML代码块。 highlight_file('demo.html'); 22. Is PHP better than Perl? Discuss. 考官现场提问: 1. 工作经历,工作职责,上一家公司的情况(女考官)。 2. 使用PHP多长时间?精通哪一块? 答:一年了。 3. 使用MySQL多长时间?精通哪一块? 答:一年了。 4. 比较MySQL的两种常用引擎的区别(MyIsAm和InnoDB)。 答:http://hi.baidu.com/woaidelphi/blog/item/5ce2748fcea433f2503d9257.html 5. 从各种角度优化以下SQL语句:SELECT * FROM tablename WHERE id IN (13, 15, 18, 19) and age=21 ORDER BY address DESC 6. 是否了解XML?讲一下格式规范。 答:http://hi.baidu.com/woaidelphi/blog/item/191aa6167ee2d04221a4e9cf.html 7. 是否使用PHP解析过XML文件?使用的什么方法?该方法使用的是什么API?(没有听懂后面半句是什么意思) 答:http://hi.baidu.com/woaidelphi/blog/item/85926ed4317c8d09a08bb72f.html 8. 写一个正则表达式 9. 一个3k+1数组,k为非负整数,请问从1乘到7000,结果的末尾会包含多少个0?

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高员外,我们会尽快处理。