1. 在PHP中,
当前脚本的名称(不包括路径和查询字符串)记录在预定义变量:$_SERVER['PHP_SELF']
链接到当前页面的的前一页面URL记录在预定义变量:$_SERVER['HTTP_REFERER']
前执行脚本的绝对路径:$_SERVER['SCRIPT_FILENAME']
正在浏览当前页面用户的IP地址:$_SERVER['REMOTE_ADDR']
查询(query)的字符串:$_SERVER['QUERY_STRING']
当前运行脚本所在的文档根目录:$_SERVER['DOCUMENT_ROOT']
2. 执行程序段将输出:
echo 8 % (-2); //0
echo -8 % 3; //-2
echo 8 % (-3); //2
3. 在HTTP 1.0中,状态码 401 的含义是?;如果返回“找不到文件”的提示,则可用 header 函数,其语句为?
401表示未授权
header('HTTP/1.0 404 Not Found');
4. 数组函数arsort的作用:对数组进行逆向排序并保持索引关系
error_reporting(2047):报告所有的错误和警告
5. 写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉)?
<?php
$a="<script type='text/javascript'>XXXXXXXXXXXXXXX</script>";
echo preg_replace('/\<script[^>]*?>.*<\/script\>/is','',$a);
6. 以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块
然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。
LoadModule php5_module "c:/php/php5apache2.dll";
AddType application/x-httpd-php .php
7. 语句 include 和 require 的区别?避免多次引用的函数?
在处理失败时,include()产生一个警告而require()产生致命错误
require_once() include_once()
8. 一个函数的参数不能对变量的引用,需要php.ini怎么配置
allow_call_time_pass_reference = on
9. 在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?
有与开始标识符一样的字符串,并且结束标识符所在的行不能包含任何其他字符(除;和结束标识符)
10. 写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。
function listDir($dir) {
if (is_dir($dir)) {
$files = array();
if ($handle = opendir($dir)) {
while(($file = readdir($handle)) !== false) {
if ($file != '.' || $file != '..') {
$f = $dir . '/' . $file;
if (is_dir($f)) {
$files[$file] = listDir($f);
} else {
$files[] = $f;
}
}
}
}
fclose($dir);
return $files;
} else {
return $dir;
}
}
11. 类的属性可以序列化后保存呢在session中,从而以后可以恢复整个类,这要用到的函数是:
serialize() / unserialize()
12. 优化MySQL数据库的方法:
1. 数据库设计方面,设计结构良好的数据库,允许部分数据冗余,避免join操作,以提高查询效率,添加适当的索引
2. 系统架构设计方面,表散列,把海量数据散列到几个不同的表里面,快慢表,快表只保留最新数据,慢表示历史存档,数据库读写分离
3. 写高效的SQL语句
4. 必要的时候用不同的存储引擎
13. 不用新变量直接交换现有两个变量的值:
1. 字符串:list($a, $b) = array($b, $a);
2. 整型:$a = $a + $b; $b = $a - $b; $a = $a - $b;
14.
-
mysql_fetch_row():函数从结果集中取得一行作为数字数组
-
mysql_fetch_assoc():函数从结果集中取得一行作为关联数组
-
mysql_fetch_array():函数从结果集中取得一行作为关联数组或数组数组,二者都有返回