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

面试题 相关文章推荐
String这个类型的class为何定义成final?
Nov 13 面试题
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
Mar 14 面试题
哪些情况下不应该使用索引
Jul 20 面试题
武汉世纪畅想数字传播有限公司 .NET笔试题
Jun 13 面试题
杭州-DOTNET笔试题集
Sep 25 面试题
.NET面试10题
Feb 24 面试题
介绍一下如何利用路径遍历进行攻击及如何防范
Jan 19 面试题
星空联盟C# .net笔试题
Dec 05 面试题
Linux如何压缩可执行文件
Oct 21 面试题
下列程序在32位linux或unix中的结果是什么
Mar 25 面试题
什么是GWT的Entry Point
Aug 16 面试题
大唐面试试题(CPU,UNIX等等)
Jan 11 面试题
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
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
2014/05/04 PHP
linux下编译安装memcached服务
2014/08/03 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
JavaScript与HTML结合的基本使用方法整理
2015/10/12 PHP
PHP常用工具类大全附全部代码下载
2015/12/07 PHP
PHP数据库处理封装类实例
2016/12/24 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
javascript加号"+"的二义性说明
2013/03/04 Javascript
js对象与打印对象分析比较
2013/04/23 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
jQuery回调方法使用示例
2017/06/26 jQuery
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
JS前端模块化原理与实现方法详解
2020/03/17 Javascript
vuex的数据渲染与修改浅析
2020/11/26 Vue.js
JS中多层次排序算法的实现代码
2021/01/06 Javascript
[02:17]TI4西雅图DOTA2前线报道 啸天mik夫妻档解说
2014/07/08 DOTA
[50:02]完美世界DOTA2联赛循环赛 Magma vs IO BO2第一场 11.01
2020/11/02 DOTA
Python中获取网页状态码的两个方法
2014/11/03 Python
python更新列表的方法
2015/07/28 Python
Python打造出适合自己的定制化Eclipse IDE
2016/03/02 Python
python实现多线程抓取知乎用户
2016/12/12 Python
python 性能优化方法小结
2017/03/31 Python
Python使用pickle模块存储数据报错解决示例代码
2018/01/26 Python
Python笔记之工厂模式
2019/11/20 Python
利用python实现逐步回归
2020/02/24 Python
Python网络爬虫四大选择器用法原理总结
2020/06/01 Python
scrapy-splash简单使用详解
2021/02/21 Python
阿拉伯书店:Jamalon
2019/07/24 全球购物
Ariat英国官网:为世界顶级马术运动员制造最优质的鞋类和服装
2020/02/14 全球购物
澳大利亚在线床零售商:Bedworks
2020/09/01 全球购物
八一建军节部队活动方案
2014/02/04 职场文书
祖国在我心中的演讲稿
2014/05/04 职场文书
保密工作承诺书
2014/08/29 职场文书
四风剖析查摆对照检查材料思想汇报
2014/09/24 职场文书