三十九·请使用 php编写程序,读取出www.baidu.com的首页的网页内容,并存入字符串$str?
方法一:
$url ="http://www.baidu.com"; $str = file_get_contents($url); echo $str;
方法二:
$fp = fopen("http://www.baidu.com",'r'); $str = ''; while(!feof($fp)){ echo $str.=fread($fp,'1024'); }
请用php将上题中读出来的网页内容的<title>标签的值解析出来?
header("Content-type:text/html;charset=utf-8"); $url ="http://www.baidu.com"; $str = file_get_contents($url); preg_match('/<title>(.+)<\/title>/',$str,$ms); echo $ms[1];
四十·通过php函数循环遍历出文件夹下的所有目录的文件,写出程序?
$dir = "zt"; function dirList($dir){ $arr = scandir($dir); foreach($arr as $file){ if($file !='.' && $file !='..'){ $path = $dir."/".$file; if(is_dir($path)){ dirList($path); }else{ echo "<p>{$path}</p>"; } } } } dirList($dir);
四十一·linux打印出一个文件夹下的所有目录和文件,编写shell脚本?
vi tree.sh #! /bin/bash tree chomd 777 tree.sh
四十二·什么是数据库索引,主键索引,唯一索引的区别,索引的缺点是什么?
数据库索引就相当于一本书的目录,就是给数据库中的每张表建立索引,便于检索提高select 效率,加快搜索速度
主键索引就是给每张表的主键设置索引,
唯一索引就是给每张表的唯一值字段设置索引,
主键索引本身就内置唯一索引,
一旦在列里加唯一索引,列里的值就不能重复,
主键索引在检索中比唯一索引快,
一个表只能有一个主键索引,一个表可以有多个唯一索引,
索引的缺点是建立索引需要增加存储空间,空间利用率低,并且数据发生变化时会改变索引资源消耗较大。
四十三·数据库设计时,常遇到的性能瓶颈有哪些,常有的解决方案是?
1·查询速度慢,避免全盘扫描,因为全盘扫描会导致大量的磁盘I/O操作,用sphinx来解决,和添加索引。
2·读写过于频繁,使用读写分离操作。
3·数据库压力大,采用分布式数据库负载均衡来解决。
4·memcache缓存。
5·链接数据库使用pdo,或者mysqli,预处理缓存字段。
6·尽量使用MyISAM。
7·建议表的列不要过多,要适当的多用些表。
四十四·通过js实现页面的前进和后退操作?
<a href="javascript:window.history.go(1)">前进</a> <a href="javascript:window.history.go(-1)">后退</a>
四十五·浏览器ie和非ie浏览器的区分,区别是什么?
<script> var val = navigator.userAgent; if(val.search('MSIE')>=0){ alert('ie浏览器'); }else{ alert('非ie浏览器'); } </script>
四十六·设定网站的用户数量在千万级,但是活跃用户的数量只有1%,如何通过优化数据库提高活跃用户的访问速度?
1·分区。(分活跃用户表和非活跃用户表)
2·分表。(人为分表,需要在php写一段路由层,判断是活跃用户,或者非活跃用户)
3·索引优化
四十七·ajax技术利用了什么协议,简述一下ajax的工作机制?
利用http协议
工作原理:
1·先通过浏览器内置的XMLHttpRequest类产生一个ajax对象,
2·调用ajax对象open方法建立一个与某一个脚本发生通讯的链接
3·设定好传输方式get/post,还要确定是异步还是同步,默认是异步
4·调用ajax的send方法发送请求,发起对php文件的请求
5·通过给ajax绑定状态检测事件,当状态码为4,并且服务器响应码为200时则获取php文件的响应数据。
<script> function showHint(str) { var xmlhttp; if (str.length==0) { document.getElementById("txtHint").innerHTML=""; return; } if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码 xmlhttp=new XMLHttpRequest(); } else { // IE6, IE5 浏览器执行代码 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","/try/ajax/gethint.php?q="+str,true); xmlhttp.send(); } </script>
四十八·利用php打印出前一天的时间格式是2017-8-10 22:21:50?
echo date('Y-n-d H:i:s',strtotime('-1 day'));
四十九·echo ,print ,print_r的区别是什么?
1·echo 和print是语言结构,print_r是函数
2·echo 可以有多个参数,print,print_r只能有一个参数
3·print()只能打印简单的数据类型变量的值(int ,string)
print_r()可以打印出复杂类型变量的值(数组,对象)
echo 可以输出一个或者多个字符串
五十·能够使html和php分离开使用的模板引擎?
Smarty,template,thinkphp,laravel,yii
评论