PHP面试题及答案二


Posted in 面试题 onMay 23, 2015
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量(1)中;而链接到当前页面的的前一页面URL记录在预定义变量(2)中

//本页地址,SCRIPT_NAME也可以:php/test.php
echo $_SERVER[PHP_SELF]."
“;
//链接到当前页面的前一页面的 URL 地址:
echo $_SERVER[HTTP_REFERER].”
“;

//其它的见参考手册:语言参考》变量》预定义变量
//前执行脚本的绝对路径名:D:Inetpubwwwrootphp est.php
echo $_SERVER["SCRIPT_FILENAME"].”
“;
//正在浏览当前页面用户的 IP 地址:127.0.0.1
echo $_SERVER["REMOTE_ADDR"].”
“;
//查询(query)的字符串(URL 中第一个问号 ? 之后的内容):id=1&bi=2
echo $_SERVER["QUERY_STRING"].”
“;
//当前运行脚本所在的文档根目录:d:inetpubwwwroot
echo $_SERVER["DOCUMENT_ROOT"].”
“;
?>

2.执行程序段将输出__。

//参考手册》语言参考》运算符》算术运算符》%为取模运算,输出0
echo 8%(-2)."
“;
//取模 $a % $b 在 $a 为负值时的结果也是负值。输出-2
echo ((-8)%3).”
“;
//输出2
echo (8%(-3)).”
“;
?>

3.在HTTP 1.0中,状态码 401 的含义是____;如果返回“找不到文件”的提示,则可用 header 函数,其语句为____。

答:401表示未授权;header(“HTTP/1.0 404 Not Found”);[见参考手册》函数参考》HTTP函数》header]

4.数组函数 arsort 的作用是____;语句 error_reporting(2047)的作用是____。

答:arsort:对数组进行逆向排序并保持索引关系 error_reporting(2047)的作用是:report All errors and warnings

5.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉):

$script="以下内容不显示:";
echo preg_replace("/].*?>.*?/si", "替换内容", $script);
?>

6.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块,
然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。
答:LoadModule php5_module "c:/php/php5apache2.dll";AddType application/x-httpd-php .php

见参考手册》目录》II. 安装与配置》6. Windows 系统下的安装》Microsoft Windows 下的 Apache 2.0.x

7.语句 include 和 require 都能把另外一个文件包含到当前文件中,它们的区别是____;为了避免多次包含同一文件,可以用语句____来代替它们。
答:在如何处理失败时,include() 产生一个警告而 require() 则导致一个致命错误;require_once()/include_once()

8.一个函数的参数不能是对变量的引用,除非在php.ini中把____设为on.
答:allow_call_time_pass_reference boolean :是否启用在函数调用时强制参数被按照引用传递, 见参考手册》附录G

9.SQL 中LEFT JOIN的含义是__,如果 tbl_user记录了学生的姓名(name)和学号(ID),
tbl_score记录了学生(有的学生考试以后被开除了,没有其记录)的学号(ID)和考试成绩(score)以及考试科目(subject),要想打印出各个学生姓名及对应的的各科总成绩,则可以用SQL语句____.

答:自然左外连接

create database phpinterview;
use phpinterview
create table tbl_user
(
ID int not null,
name varchar(50) not null,
primary key (ID)
);
create table tbl_score
(
ID int not null,
score dec(6,2) not null,
subject varchar(20) not null
);

insert into tbl_user (ID, name) values (1, beimu);
insert into tbl_user (ID, name) values (2, aihui);
insert into tbl_score (ID, score, subject) values (1, 90, 语文);
insert into tbl_score (ID, score, subject) values (1, 80, 数学);
insert into tbl_score (ID, score, subject) values (2, 86, 数学);
insert into tbl_score (ID, score, subject) values (2, 96, 语文);

select A.id,sum(B.score) as sumscore
from tbl_user A left join tbl_score B
on A.ID=B.ID
group by A.id

10. 在PHP中,heredoc是一种特殊的字符串,它的结束标志必须____
答:结束标识符所在的行不能包含任何其它字符除";"

11.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。

function my_scandir($dir)
{
$files=array();
if(is_dir($dir))
{
if($handle=opendir($dir))
{
while(($file=readdir($handle))!==false)
{
if($file!="." && $file!="..")
{
if(is_dir($dir."/".$file))
{
$files[$file]=my_scandir($dir."/".$file);
}
else
{
$files[]=$dir."/".$file;
}
}
}
closedir($handle);
return $files;
}
}
}
print_r(my_scandir("D:Program FilesInternet ExplorerMUI"));
?>

Tags in this post...

面试题 相关文章推荐
C语言笔试集
Jul 24 面试题
将"引用"作为函数参数有哪些特点
Apr 05 面试题
什么是WEB控件?使用WEB控件有哪些优势?
Jan 21 面试题
2019年.net常见面试问题
Feb 12 面试题
C#笔试题集合
Jun 21 面试题
接口可以包含哪些成员
Sep 30 面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
Jan 19 面试题
下列程序在32位linux或unix中的结果是什么
Mar 25 面试题
软件测试题目
Feb 27 面试题
shell程序如何生命变量?shell变量是弱变量吗?
Nov 10 面试题
ruby如何进行集成操作?Ruby能进行多重继承吗?
Oct 16 面试题
Delphi笔试题
Nov 14 面试题
PHP经典面试题
Sep 03 #面试题
PHP面试题及答案一
Jun 18 #面试题
一份全面的PHP面试问题考卷
Jul 15 #面试题
PHP面试题大全
Oct 16 #面试题
六道php面试题附答案
Jun 05 #面试题
htmlentities() 和 htmlspecialchars()有什么区别
Jul 01 #面试题
PHP两种查询函数array/row的区别
Jun 03 #面试题
You might like
简单的页面缓冲技术
2006/10/09 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
php反射类ReflectionClass用法分析
2016/05/12 PHP
PHP基于反射机制实现插件的可插拔设计详解
2016/11/10 PHP
PHP文件操作详解
2016/12/30 PHP
php求数组全排列,元素所有组合的方法总结
2017/03/14 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
Stop SQL Server
2007/06/21 Javascript
Java 正则表达式学习总结和一些小例子
2012/09/13 Javascript
JavaScript关闭当前页面(窗口)不带任何提示
2014/03/26 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
Web前端新人笔记之jquery入门心得(新手必看)
2016/05/17 Javascript
jQuery简易时光轴实现方法示例
2017/03/13 Javascript
js实现移动端轮播图效果
2020/12/09 Javascript
vue页面离开后执行函数的实例
2018/03/13 Javascript
详解nodejs http请求相关总结
2019/03/31 NodeJs
vue 使用axios 数据请求第三方插件的使用教程详解
2019/07/05 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
[01:29:17]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
[33:19]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第一场 11.26
2020/11/30 DOTA
Python中声明只包含一个元素的元组数据方法
2014/08/25 Python
python服务器端收发请求的实现代码
2014/09/29 Python
怎样使用Python脚本日志功能
2016/08/14 Python
Python 的类、继承和多态详解
2017/07/16 Python
理论讲解python多进程并发编程
2018/02/09 Python
python读文件保存到字典,修改字典并写入新文件的实例
2018/04/23 Python
浅谈Pycharm中的Python Console与Terminal
2019/01/17 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
JD Sports意大利:英国篮球和运动时尚的领导者
2017/10/29 全球购物
理发店策划方案
2014/06/05 职场文书
学雷锋倡议书
2015/01/19 职场文书
2015年护士节慰问信
2015/03/23 职场文书
2015年社区宣传工作总结
2015/05/20 职场文书
Pytorch 如何实现常用正则化
2021/05/27 Python