一、使用PHP语言自定义一个函数,此函数作用是将一个句子按单词反序。例如”One World One Dream”,反序后变为 “Dream One World One”。
function get_rev($str){ $arr=explode(‘ ’,$str); for($i=count($arr)-1;$i>=0;$i--){ $res.=$arr[$i].’ ’; } return $res; }
二、两条查询语句,一条是Select * from table1 where id>10 and id<100,一条是Select * from table2 where id>200 and id<500
请尝试只写一条SQL语句,完成相应的查询任务。
Select * from table1 as t1,table2 as t2 where t1.id>10 and t1.id<100 and t2.id>200 and t2.id<500;
三:有两个文件,一大一小,其中之一有8,000,000个电话号码,另一个文件有500个电话号码,请说明一种方法找出重复的电话号码。
1、读取文件里的内容,以某字符作为分割标志(使用explode()函数),分隔800000的字符串,然后用500个电话号码作为值,作为判断条件(使用in_array()函数)判断,是否存在于其中,存在则拿出
2、要是效率的话,使用hash算法
3、array_intersect()效果更佳
四、有一伙海盗,俘虏了三个渔民A、B、C。海盗船长决定杀他们之前给他们一次机会。他当渔民的面拿出三顶黑帽子,两顶白帽子,然后给这三个可怜人各戴一顶,分别问他们头上帽子的颜色。
每个渔民只能看到另外两个渔民帽子的颜色,看不到自己的,而且他们不能通讯,不能讨论,如果猜对了,放一条生路,否则立即处死。
船长先问渔民A,结果渔民A猜错了,被杀死了。船长又问渔民B,结果还是猜错了,同样被杀死了。海盗船长再问渔民C时,结果渔民C猜对被释放了。
考虑到船长及A、B、C都很聪明,问为什么渔民C一定能猜中?
答案:偶不会,会的留言说一下答案吧!
五、请用正则表达式写一个函数,验证电子邮件的格式是否正确。
function get_url($email){ if(preg_match('/^([0-9a-zA-Z_]+)*\w+@(\w)+\.com|\.cn$/ims',$email)){ echo 2; } }
六、列举流行的Ajax框架?(每个1分)说明Ajax实现原理是什么及Json在Ajax中起什么作用?
jQuery extjs
原理:通过XMLHttpRequest创建对象,根据客户端的请求,传递到服务器端进行数据处理,然后接收服务器端返回来的数据
以json格式组装从服务器端返回来的数据
七、我们常可以看到,一些商场买200元的商品可以返100元优惠券(可在本商场代替现金)。请问实际上商品的折扣是多少?
如果买完200元的商品 不用优惠券 折扣没有,多了1张100元优惠券
如果买完200员的商品 使用优惠券(将这个100员优惠券又去买完了商品) 相当于200元的现金 买来了 300员的商品 200/300=66%
八、我们希望开发一款扑克游戏,请给出一套洗牌算法,公平的洗牌并将洗好的牌存储在一个整形数组里。
$a=54; for($i=1;$i<=$a;$i++){ $str[$i]=$i; } for($i=1;$i<=$a;$i++){ $t=rand(0,$a-$i); $s[$i]=$str[$t]; unset($str[$t]); $str=array_values($str); } echo '<pre>'; print_r($s);
九、我们希望开发一个门户系统,数据存储采用MySQL,用户数量为1000万,预计文章总数为10亿,日更新量至少为10万,日访问量为5000万,对数据库的读写操作比例超过10:1,你如何设计该系统,以确保其高效,稳定的运行?
(提示:可以从数据库设计,系统框架及网络架构方面进行描述,自由发挥)
网络
DNS轮循
Nginx主 从服务器(2台以上 用于负载均衡)
集群服务器->PHP分发器(根据随机数对应ip连接数据库)
数据库集群(多台以上)
数据库(2台以上)互为主从