Skip to content

[转]PHP的一些面试题

2008 二月 22
by 荒野无灯

   PHP部分
1   请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?
      传值只是把某一个变量的值传给了另一个变量,而引用则说明两者指向了同一个地方。
2   在PHP中error_reporting这个函数有什么作用?
     设定php脚本的错误报告级别,说实话,我没怎么用过,我现在用的是C#开发,。
3   请用正则表达式(Regular Expression)写一个函数验证电子邮件的格式是否正确。
function CheckMailAdr($str){
return(eregi(“^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$”,$str));
}
4   简述如何得到当前执行脚本路径,包括所得到参数。
说明:例如有一个脚本 www.domain.com,传给他的参数有参数1,参数2,参数3…。传递参数的方法有可能是GET有可能是POST,那么现在请写出类似:http://www.domain.com/script.php?参数1=值1&参数2=值2…..   的结果
     关于前执行脚本路径感觉有点歧义:若是得到该脚本在服务器上的绝对路径用 $_SERVER[‘APPL_PHYSICAL_PATH’].若是该脚本的URL则可以用获取
     获取所有参数:可以用以下方法:
//获取post的数据
while (list($var, $value) = each($HTTP_POST_VARS))
{
    echo “$var = $value n”;
}
//获取get方式的数据
while (list($var, $value) = each($HTTP_GET_VARS))
{
    echo “$var = $value n”;
}
5   有一个一维数组,里面存储整形数据,请写一个函数,将他们按从大到小的顺序排列。要求执行效率高。并说明如何改善执行效率。
(该函数必须自己实现,不能使用php函数)
可以用冒泡排序

<?php
function BubbleSort($str)
{
for ($i=0;$i<count($str);$i++)
{
    for ($j=count($str)-2;$j>=$i;$j–)
     {
            if($str[$j+1]<$str[$j])
             {
                $tmp = $str[$j+1];

                $str[$j+1]=$str[$j];
                $str[$j]=$tmp;
             }

     }

}
return $str;
}
$str = array(3,6,1,5,9,0,4,6,11);
print_r(BubbleSort($str));
?>

6   请举例说明在你的开发过程中用什么方法来加快页面的加载速度
A.生成静态HTML

B.生成XML

C.可不用数据库的尽量不用数据库

D.用ZEND加速

喜欢这篇文章吗?

请订阅本站 RSS feed填写您的邮件地址,订阅我们的精彩内容:,欢迎点击这里捐赠以支持荒野无灯转播到腾讯微博 转播到腾讯微博

作者:荒野无灯
出处:Hacklog【Hacklog】

声明: 本站遵循 署名-非商业性使用-相同方式共享 3.0 共享协议. 转载请注明转自Hacklog【荒野无灯weblog】

本文链接: http://ihacklog.com/?p=407

Leave a Reply

Allowed Tags - You may use these HTML tags and attributes in your comment.

<a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <q cite=""> <strong>

 :wink:  :-|  :-x  :twisted:  :)  8-O  :(  :roll:  :-P  :oops:  :-o  :mrgreen:  :lol:  :idea:  :-D  :evil:  :cry:  8)  :arrow:  :-?  :?:  :!:

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS