php程序员面试题(a卷 附答案)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“初级程序员php面试题”。
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_pa_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
(IDintnot null,namevarchar(50)not null,primary key(ID));
create table tbl_score
(IDintnot null,scoredec(6,2)not null,subjectvarchar(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”));?>
1.以下哪一句不会把 John 新增到 users 阵列?$users[] = 'john'; 成功把 John 新增到阵列 users。array_add($users,‟john‟); 函式 array_add() 无定义。array_push($use......
PHP经典面试题(连载4).1 请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?答: 传值只是把某一个变量的值传给了另一个变量,而引用则说明两者指向了同一个地方。2......
PHP方面:1:echo print print_r的区别Echo是PHP语句,print与print_r是函数,语句没有返回值,函数可以有返回值。Print只能打印简单类型变量的值。Print_r可以打印复杂变量值(数组或......
北京融入网络科技有限公司PHP工程师面试题1、请写一个实现中文字串截取无乱码的方法。(超出部分用’…..’替换)。2、ThinkPHP框架中,下列定义有什么不同?$userModel = M(“User......
PHP程序员面试题一、选择题1、下列不属于PHP的开始结束标记的是:( )A、B、?>C、<%%>D、2、下列程序的输出结果为( )