php面试

1  谈谈您是如何提高页面加载速度的
一、网站代码优化

  代码优化能够提高网页的下载速度、降低服务器使用的资源、提高网络带宽利用率



  目前有三种方式进行:清理垃圾代码;Css优化;JS优化。

  ① 常见的垃圾代码,空格。去除,空白区域(空格,制表符,换行符等)都可以安全

删除。

  ② css优化,CSS与页面尽量相分离,尽量采用外部调用。

  ③ js优化,采用底部位置加外部调用的方式优化。

  目前为止,百度搜索引擎不解析JS生成的页面或内容,JS代码冗长,执行效率远低于

HTML,导致网页打开会很慢.

  二、网页GZIP压缩

  对GZIP不了解的朋友,赶紧百科了解一下,这可是个不费力又讨好的好东西。往往

文字内容居多的网站,网页采用GZIP压缩技术,网页的压缩率平均可达到75%以上,打一

个通俗的比方,好比1G的文件被压缩成200M了,你说网页加载速度能不提升吗!

  那怎样使用GZIP对网页进行压缩呢?对此有兴趣的朋友,可以去看看关于网页GZIP压

缩的技术文档《使用mod_gzip 和 mod_deflate对网页内容进行压缩》。

  怎样检测自己的网站是否启用了GZIP压缩呢?百度一下GZIP压缩检测工具,输入自己

的网址,既可检测。

  三、网站图片优化

  在启用了,网站代码优化,网页GZIP压缩优化,之后,网页加载速度会有明显提升

。这时,我们可以对网站图片优化,压缩图片大小,为大家推荐一款非常实用的好工具

,压缩效果是可以在保证图片质量之后,再进一步压缩大小,那就是“image optimizer

”。不仅可以压缩单幅的图片,也可选择批量压缩。

2  一个数组Array(2,45,10,257),请您写出一个函数,返回数组Array

(2,4,5,1,0,2,5,7)

$a[0]
3

$str = 0;
function aaa(&$str){
  return $str;
}

echo aaa($str+1);

输出结果?

出错,地址传递需要变量名


4  写一段代码,过滤掉页面的所有javascript代码


5  写一段代码,过滤掉所有的HTML标签



6  写一段代码ubb代码
输入[img:src=xxx.jpg]
显示<img src="xxx.jpg" />


7  谈谈arr["id"] arr['id'] arr[id]的区别


8  <ul>
     <li>aaa</li>
     <li>bbb</li>
   </ul>
如何能实现让li标签横向排列


9  实现一个选项卡(2个标签,鼠标放到A标签上显示A标签下的文章列表,鼠标放到B标

签上显示B标签下的文章列表)


10  写一个函数。实现如果发帖时间是24小时以内的 输出 x时x分x秒 前发布,24小时

以外的话 输出 x年x月x日  发布


11  析出10个常用LINUX命令 并解释


12  <div divname="aaa" />
用两种方法修改divname的值为bbb(js方式,jquery方式或其他)


51cto面试题
1.如何让js的alert()里面的内容换行
echo "<script>alert('hello \\n world');</script>";

2.如何得知客户端IP
echo $_SERVER['REMOTE_ADDR'] //客户端ip
echo $_SERVER['SERVER_ADDR'] //服务器端ip

3.$f=abc;
 Echo “zxc\n$f”; Echo ‘zxc\n$f’;

4.谈谈你对MYsql事务的认识
5.Mvc模式的理解(会问的比较细)。
6.左连接右连接的作用(LEFT JOIN)
7.写出<div>abc</div>字体黑体,大小14px,加粗,红色的css代码
8.mysql性能优化。
9.一些开源产品的结构比如织梦,phpcms,discuz
MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是

性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已

经外部键等高级数据库功能。1.InnoDB不支持FULLTEXT类型的索引。
◆2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,

InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即

可。注意的是,当count(*)语句包含where条件时,两种表的操作是一样的。
◆3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在

MyISAM表中,可以和其他字段一起建立联合索引。
◆4.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。
◆5.LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表

改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如

外键)的表不适用。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值