在我们之前的课程中,我们有介绍到了php面试题中关于thinkphp的题目、以及2017最全的php面试题目及答案总结、其中很多的php面试题都是在口述,也有很多笔试的PHP面试题,今天我们就给大家来总结下!
php面试题中的笔试
1.用PHP写出显示客户端IP与服务器IP的代码
答:打印客户端IP:echo $_SERVER['REMOTE_ADDR'];
或者:getenv('REMOTE_ADDR');
打印服务器IP:echo gethostbyname('www.meizhi520.com')
2.session与cookie的区别?
答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 cookie:用来存储连续訪問一个頁面时所使用,是存储在客户端,对于Cookie来说是存储在用户WIN的Temp目录中的。 两者都可通过时间来设置时间长短
3.表单中 get与post提交方法的区别?
答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.
4.用PHP打印出前一天的时间格式是2013-11-26 12:11:11
答:echodate('Y-m-d H:i:s', strtotime('-1 days'));
5.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。(目录操作)$d = dir(dirname(__file__));
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while ( false !== ($entry = $d->read ()) ) {
echo $entry . "";
}
$d->close ();
6.请写一个函数验证电子邮件的格式是否正确function checkEmail($email)
{
$pregEmail = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i";
return preg_match($pregEmail,$email);
}
7.实现中文字串截取无乱码的方法。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;
}
}
8.JS的转向函数是?怎么引入一个外部JS文件?window.location.href
9.MySQL数据库,怎么优化?
答: (1)配置优化(服务器配置)
(2)建表优化(表、字段设置)
(3)查询优化(sql语句)
答: 1、选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如’省份,性别’,最好设置为ENUM
2、使用连接(JOIN)来代替子查询:
3、使用联合(UNION)来代替手动创建的临时表
4、事务处理:
5、锁定表,优化事务处理:
6、使用外键,优化锁定表
7、建立索引:
8、优化查询语句
10.如何使用下面的类,并解释下面什么意思?class test{
function Get_test($num){
$num=md5(md5($num)."En");
return $num;
}
}
答:$testnum = "123″; $object = new test(); $encrypt = $object->Get_test($testnum); echo $encrypt;
类test里面包含Get_test方法,实例化类调用方法多字符串加密
总结:
这里我们只是给大家总结了一下,在php面试题中会常遇到的笔试题,大家可以对此参考,自己也可以进行扩展,增强自己的知识点!希望对你有所帮助!
相关推荐:
2017最全的php面试题目及答案总结
php面试题中Thinkphp题目的汇总
2017招聘季:PHP面试题超强总结!
11个提问频率最高的php面试题