一份比较全的PHP面试题


Posted in 面试题 onJuly 29, 2016
1、如何实现PHP、JSP交互?
答:题目有点含糊不清,SOAP,XML_RPC,Socket function,CURL都可以实现这些,如果是考PHP和Java的整合,PHP内置了这种机制(如果考PHP和.NET的整合,也可以这么回答),例如$foo = new Java(‘java.lang.System’);
2、PHP的意思(送1分)
答:Hypertext Preprocessor超级文本预处理语言
3、MYSQL取得当前时间的函数是?,格式化日期的函数是(2分)
答:取当前时间的函数Now() 格式化日期的函数 DATE_FORMAT(“时间”, “格式”)
4、实现中文字串截取无乱码的方法。(3分)
答:第一种方法,使用mbstring扩展库的mb_substr
例如:
echo mb_substr(‘这样一来我的字符串就不会有乱码了’, 0, 7, ‘utf-8′);
?>
输出:这样一来我的字
第二种方法,用如下的函数实现
function GBsubstr($string, $start, $length) {
if(strlen($string)>$length){
$str=null;
$len=$start+$length;
for($i=$start;$i if(ord(substr($string,$i,1))>0xa0){
$str.=substr($string,$i,2);
$i++;
}else{
$str.=substr($string,$i,1);
}
}
return $str.’…’;
}else{
return $string;
}
}
5、请简单阐述您最得意的开发之作(4分)
答:
6、对于大流量的网站,您采用什么样的方法来解决访问量问题?(4分)
答:
7、用PHP写出显示客户端IP与服务器IP的代码1分)
答:
8、如何修改SESSION的生存时间(1分).
答:<?php
session_start();
// 保存一天
$lifeTime = 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, “/”);
?>
9、有一个网页地址, 比如PHP研究室主页: http://www.php100.com,如何得到它的内容?($1分)
答:echo file_get_contents( ” http://www.php100.com” );
10、在HTTP 1.0中,状态码401的含义是(401:身份验证错误 );如果返回“找不到文件”的提示,则可用 header 函数,其语句为( header(“找不到文件”); )
11、在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?(1分)
答:结束标识符所在的行不能包含任何其它字符除”;”
12、谈谈asp,php,jsp的优缺点(1分)
答:
13、谈谈对mvc的认识(1分)
答:
14、写出发贴数最多的十个人名字的SQL,利用下表:members(id,username,posts,pass,email)(2分)
15. 请说明php中传值与传引用的区别。什么时候传值什么时候传引用?(2分)
16. 在PHP中error_reporting这个函数有什么作用? (1分)
17. 请写一个函数验证电子邮件的格式是否正确 (2分)
18. 简述如何得到当前执行脚本路径,包括所得到参数。(2分)
19、JS表单弹出对话框函数是?获得输入焦点函数是? (2分)
20、JS的转向函数是?怎么引入一个外部JS文件?(2分)
21、foo()和@foo()之间有什么区别?(1分)
22、如何声明一个名为”myclass”的没有方法和属性的类? (1分)
23、如何实例化一个名为”myclass”的对象?(1分)
24、你如何访问和设置一个类的属性? (2分)
25、mysql_fetch_row() 和mysql_fetch_array之间有什么区别? (1分)
26、GD库是做什么用的? (1分)
27、指出一些在PHP输入一段HTML代码的办法。(1分)
28、下面哪个函数可以打开一个文件,以对文件进行读和写操作?(1分)
(a) fget() (b) file_open() (c) fopen() (d) open_file()
29、下面哪个选项没有将 john 添加到users 数组中? (1分)
(a) $users[] = ‘john’;
(b) array_add($users,’john’);
(c) array_push($users,‘john’);
(d) $users ||= ‘john’;
30、下面的程序会输入是否?(1分)
$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;
?>
31、使用php写一段简单查询,查出所有姓名为“张三”的内容并打印出来 (2分)
表名 UserName Tel Content Date
张三 13333663366 大专毕业 2006-10-11
张三 13612312331 本科毕业 2006-10-15
张四 021-55665566 中专毕业 2006-10-15
请根据上面的题目完成代码:
$mysql_db=mysql_connect(“local”,”root”,”pass”);
@mysql_select_db(“DB”,$mysql_db);
32、如何使用下面的类,并解释下面什么意思?(3)
class test{
function Get_test($num){
$num=md5(md5($num).”En”);
return $num;
}
}

—————————————————————————-
32、写出 SQL语句的格式 : 插入 ,更新 ,删除 (4分)
表名 UserName Tel Content Date
张三 13333663366 大专毕业 2006-10-11
张三 13612312331 本科毕业 2006-10-15
张四 021-55665566 中专毕业 2006-10-15
(a) 有一新记录(小王 13254748547 高中毕业 2007-05-06)请用SQL语句新增至表中
(b) 请用sql语句把张三的时间更新成为当前系统时间
(c) 请写出删除名为张四的全部记录
33、请写出数据类型(int char varchar datetime text)的意思; 请问varchar和char有什么区别(2分)
34、MySQ自增类型(通常为表ID字段)必需将其设为(?)字段(1分)
35、写出以下程序的输出结果 (1分)
$b=201;
$c=40;
$a=$b>$c?4:5;
echo $a;
?>
36、检测一个变量是否有设置的函数是否?是否为空的函数是?(2分)
—————————————————————————–
37、取得查询结果集总数的函数是?(1分)
38、$arr = array(‘james’, ‘tom’, ‘symfony’); 请打印出第一个元素的值 (1分)
39、请将41题的数组的值用’,号分隔并合并成字串输出(1分)
40、$a = ‘abcdef’; 请取出$a的值并打印出第一个字母(1分)
41、PHP可以和sql server/oracle等数据库连接吗?(1分)
42、请写出PHP5权限控制修饰符(3分)
43、请写出php5的构造函数和析构函数(2分)
———————————————————————
44、以下请用PHPMYADMIN完成
(一)创建新闻发布系统,表名为message有如下字段 (3分)
id 文章id
title 文章标题
content 文章内容
category_id 文章分类id
hits 点击量
(二)同样上述新闻发布系统:表comment记录用户回复内容,字段如下 (4分)
comment_id 回复id
id 文章id,关联message表中的id
comment_content 回复内容
现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面
文章id 文章标题 点击量 回复数量
用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示为0
(三)上述内容管理系统,表category保存分类信息,字段如下 (3分)
category_id int(4) not null auto_increment;
categroy_name varchar(40) not null;
用户输入文章时,通过选择下拉菜单选定文章分类
写出如何实现这个下拉菜单
填空题
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量____中;而链接到当前页面的URL记录在预定义变量____中。
2.执行程序段将输出____。
3.在HTTP 1.0中,状态码 401 的含义是____;如果返回“找不到文件”的提示,则可用 header 函数,其语句为____。
4.数组函数 arsort 的作用是____;语句 error_reporting(2047)的作用是____。
5.PEAR中的数据库连接字符串格式是____。
6.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把scrīpt标记及其内容都去掉):____。
7.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块,然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。
8.语句 include 和 require 都能把另外一个文件包含到当前文件中,它们的区别是____;为了避免多次包含同一文件,可以用语句____来代替它们。
9.类的属性可以序列化后保存到 session 中,从而以后可以恢复整个类,这要用到的函数是____。
10.一个函数的参数不能是对变量的引用,除非在php.ini中把____设为on.
11.SQL中LEFT JOIN的含义是____。如果 tbl_user记录了学生的姓名(name)和学号(ID),tbl_score记录了学生(有的学生考试以后被开除了,没有其记录)的学号(ID)和考试成绩(score)以及考试科目(subject),要想打印出各个学生姓名及对应的的各科总成绩,则可以用SQL语句____。
编程题
1. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名
例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php
2. 在 HTML 语言中,页面头部的 meta 标记可以用来输出文件的编码格式,以下是一个标准的 meta 语句
请使用 PHP 语言写一个函数,把一个标准 HTML 页面中的类似 meta 标记中的 charset 部分值改为 big5
请注意:
1. 需要处理完整的 html 页面,即不光此 meta 语句
2. 忽略大小写
3. ‘ 和 ” 在此处是可以互换的
4. ‘Content-Type’ 两侧的引号是可以忽略的,但 ‘text/html; charset=gbk’ 两侧的不行
5. 注意处理多余空格
3. 写一个函数,算出两个文件的相对路径
如 $a = ‘/a/b/c/d/e.php’;
$b = ‘/a/b/12/34/c.php’;
计算出 $b 相对于 $a 的相对路径应该是 ../../c/d将()添上
3.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。
4.简述论坛中无限分类的实现原理。

Tags in this post...

面试题 相关文章推荐
一份全面的PHP面试问题考卷
Jul 15 面试题
群胜软件Java笔试题
Sep 29 面试题
一套Java笔试题
Aug 20 面试题
存储过程和函数的区别
May 28 面试题
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
Oct 15 面试题
sealed修饰符是干什么的
Oct 23 面试题
linux面试题参考答案(5)
Sep 01 面试题
几个常见的软件测试问题
Sep 07 面试题
Prototype如何实现页面局部定时刷新
Aug 06 面试题
如何用Java判断一个文件或目录是否存在
Nov 19 面试题
怎样声明一个匿名的内部类
Jun 01 面试题
介绍下java.util.Arrays类
Oct 16 面试题
Yahoo-PHP面试题4
May 05 #面试题
Yahoo-PHP面试题3
Jan 14 #面试题
Yahoo-PHP面试题2
Dec 06 #面试题
Yahoo-PHP面试题1
Jul 20 #面试题
PHP面试题附答案
Nov 28 #面试题
Yahoo的PHP面试题
May 26 #面试题
PHP数据运算类型都有哪些
Nov 05 #面试题
You might like
php4的彩蛋
2006/10/09 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
yii操作cookie实例简介
2014/07/09 PHP
php简单判断文本编码的方法
2015/07/30 PHP
简单了解PHP编程中数组的指针的使用
2015/11/30 PHP
PHP中Cookie的使用详解(简单易懂)
2017/04/28 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
2007/01/22 Javascript
jscript之List Excel Color Values
2007/06/13 Javascript
映彩衣的js随笔(js图片切换效果)
2011/07/31 Javascript
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
实现音乐播放器的代码(html5+css3+jquery)
2015/08/04 Javascript
jquery如何获取元素的滚动条高度等实现代码
2015/10/19 Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
2016/01/12 Javascript
深入理解AngularJS中的ng-bind-html指令和$sce服务
2016/09/08 Javascript
JS+CSS实现下拉刷新/上拉加载插件
2017/03/31 Javascript
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
2017/07/05 NodeJs
es6 字符串String的扩展(实例讲解)
2017/08/03 Javascript
微信小程序 rich-text的使用方法
2017/08/04 Javascript
微信小程序当前时间时段选择器插件使用方法详解
2018/12/28 Javascript
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
2019/05/12 jQuery
ligerUI的ligerDialog关闭刷新的方法
2019/09/27 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
python编程羊车门问题代码示例
2017/10/25 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
python+PyQT实现系统桌面时钟
2020/06/16 Python
python中tkinter的应用:修改字体的实例讲解
2019/07/17 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
介绍一下linux的文件系统
2015/10/06 面试题
应届生污水处理求职信
2013/11/06 职场文书
迁户口计划生育证明
2014/10/19 职场文书
2015年置业顾问工作总结
2015/04/07 职场文书
使用 Apache 反向代理的设置技巧
2022/01/18 Servers
CentOS7安装MySQL8的超级详细教程(无坑!)
2022/06/10 Servers