php面试题附答案二
1、如何实现字符串翻转?
<?php
function getStr($str){
$len=strlen($str);
for ($i=0;$i<$len/2;$i++){
$temp=$str[$i];
$str[$i]=$str[$len-$i-1];
$str[$len-$i-1]=$temp;
}
return $str;
}
echo getStr("abcdef");
?>
2、apache+mysql+php实现最大负载的方法?
个人观点:主要是看Apache和mysql的负载。
Apache的负载均衡主要归功于 mod_proxy 这个模块。 一般来说,负载均衡就是将客户端的请求分流给后端的各个真实服务器,达到负载均衡的目的。还有一种方式是用两台服务器,一台作为主服务器(Master),另一台作为热备份(Hot Standby),请求全部分给主服务器,在主服务器当机时,立即切换到备份服务器,以提高系统的整体可靠性。
mysql的负载均衡暂时没有研究
3、对于大流量的网站,您采用什么样的方法来解决访问量问题?
第一,确认服务器硬件是否足够支持当前的流量。
第二,优化数据库访问。
第三,禁止外部的盗链。
第四,控制大文件的下载。
第五,使用不同主机分流主要流量
第六,使用流量分析统计软件。
4、$str1 = null;
$str2 = false;
echo $str1==$str2 ? '相等' : '不相等';
相等
$str3 = '';
$str4 = 0;
echo $str3==$str4 ? '相等' : '不相等';
相等
$str5 = 0;
$str6 = '0';
echo $str5===$str6 ? '相等' : '不相等';
不相等
echo '<br/>';
$a1 = null;
$a2 = false;
$a3 = 0;
$a4 = '';
$a5 = '0';
$a6 = 'null';
$a7 = array();
$a8 = array(array());
echo empty($a1) ? 'true' : 'false';
echo empty($a2) ? 'true' : 'false';
echo empty($a3) ? 'true' : 'false';
echo empty($a4) ? 'true' : 'false';
echo empty($a5) ? 'true' : 'false';
echo empty($a6) ? 'true' : 'false';
echo empty($a7) ? 'true' : 'false';
echo empty($a8) ? 'tru
相关文档:
在PHP中使用过SESSION的朋友可能会碰到这么一个问题,在某些客户端电脑上SESSION变量不能跨页传递。这令我苦恼了好些日子,最终通过查资料思考并解决了这个问题。我认为,出现这个问题的原因有以下几点:
1、客户端禁用了cookie
2、浏览器出现问题,暂时无法存取cookie
3、php.ini中的session.use_trans_sid = 0或者编译 ......
使用popen结合SHELL命令也可以实现多进程并发编程。
实例如下:
<?php
//b.php文件
$file = 'testdir/file.txt';
for ($i=0;$i<10;$i++){
$fp = fopen($file,'a+');
fputs($fp, $i.'\r\n');
fclose($fp);
sleep(1);
}
?> ......
http://www.builder.com.cn/2007/1027/583048.shtml
在php3.0以上版本中,php内置了几乎目前所有的数据库处理函数,包括Oracle;在本文中我们通过一个实例来介绍了如何使用这些函数来操作Oracle数据库。
PHP提供了2大类API(应用程序接口)来操作Oracle数据库。一个是标准的Oracle处理函数(ORA) 另一个是Oracle 8调用接口函 ......
安装环境为windows操作系统,由于我同时需要asp+mssql(access)的调试环境,所以就在windows平台下增加apache+php+mysql的调试环境,双环境同时存在,方便我随时切换。
Apache的安装与配置
打开apache官方网站 http://archive.apache.org/dist/httpd/binaries/ ......