PHP研发工程师笔试题
笔试题
1、请给出js代码,推荐使用jQuery,实现鼠标移动到li上时高亮当前li的功能(鼠标移上去的li添加class="highlight",鼠标移出的li去掉该样式)。(10分)
<!DOCTYPE html> <html> <head> <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.9.0/jquery.js"></script> <style> #container li{list-style-type:none;} .highlight{color:white; background:red} </style> </head> <body> <ul id="container"> <li>11111111111</li> <li>22222222222</li> <li>33333333333</li> </ul> <script> // js代码实现 </script> </body> </html>
2、jQuery中常用的跨域访问的ajax方法有哪些?请尽可能写出demo使用console.log打印出后端返回的数据。(10分)
3、请给出php代码,使用模板替换将一段js代码插入到html页面中,允许修改模板内容,只要生成的页面能alert弹出ab即可。(10分)
html和js模板代码如下:
<?php $html = <<<EOF <!DOCTYPE html> <html> <head> </head> <body> </body> </html> EOF; $js = <<<EOF <script type="text/javascript"> var a = 'a'; var b = 'b'; alert(a + b); </script> EOF;
4、请给出php代码从文本文件中读取关键词信息,打印出insert到数据库中的sql语句。(30分)
keywords.txt文件内容如下:
DNF 15234 无敌版 51342 双人 38342 斗地主 23174 ……
该文件中约有1万个关键词,关键词名称和点击次数之间使用半角空格分隔,行之间使用PHP_EOL进行分隔。
mysql表定义如下:
CREATE TABLE IF NOT EXISTS `keywords_dict` ( `id` int(11) NOT NULL COMMENT '自增ID', `name` varchar(60) NOT NULL COMMENT '关键词名称', `click_num` int(11) NOT NULL DEFAULT '0' COMMENT '点击次数', `createtime` int(11) NOT NULL COMMENT '关键词创建时间戳', `del_flag` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否删除, 0表示未删除, 1表示已删除', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=gbk;
5. 已知每个展示页面有$size=100个关键词,第一页的page=1,第二页的page=2,依此类推。请给出将第三页$page=3的未删除的关键词按照点击量倒序查询出来。(20分)
6. 根据指示,现在需要从数据库中逻辑删除(del_flag置为1)含有以下关键词的记录。(20分)
$blackList = array("斗地主", "扑克", ……);
删除示例:数据库中"斗地主"、"打扑克"等关键词的del_flag值被置为1。
假设现在已经连上数据库,请给出mysql_query()等php代码更新这些词在数据库的删除状态。
加分题:
7. 已知页面上每个关键词都会以"/keyword.php?k=无敌版"作为访问链接。请给出php代码给这个词的点击量+1。(10-20分)
文章网址:http://blog.zhengshuiguang.com/php/php-exam.html
随意转载^^但请附上教程地址。
评论已关闭