美文网首页
PHP面试题集锦(1)

PHP面试题集锦(1)

作者: 史史小子 | 来源:发表于2017-08-29 19:21 被阅读88次

    1.对于大流量的网站,您采用什么样的方法来解决访问量问题?

    1 有效使用缓存,增加缓存命中率

    2 使用负载均衡

    3 对静态文件使用CDN进行存储和加速

    4 想法减少数据库的使用

    5 查看出现统计的瓶颈在哪里

    2.用PHP写出显示客户端IP与服务器IP的代码

    $_SERVER["REMOTE_ADDR"]

    $_SERVER["SERVER_ADDR"]

    3.语句include和require的区别是什么?为避免多次包含同一文件,可用(?)语句代替它们?

    在失败的时候:

    include产生一个warning,而require产生直接产生错误中断

    require在运行前载入

    include在运行时载入

    require_once

    include_once

    4.如何修改SESSION的生存时间

    session_set_cookie_params

    5.有一个网页地址, 比如PHP研究室主页: http://www.phpv.net/index.html,如何得到它的内容?

    file_get_contents

    curl

    6.在HTTP 1.0中,状态码401的含义是(?);如果返回“找不到文件”的提示,则可用 header 函数,其语句为

    未授权

    header("HTTP/1.0 404 Not Found");

    fast CGI中:

    header("Status: 404 Not Found");

    7.在PHP中error_reporting这个函数有什么作用?

    设定error的展示级别

    8.请写一个函数验证电子邮件的格式是否正确

    $str = "jianfeng@126.com";

    regex="([a−z0−9\.−]+)@([\da−z\.−]+)\.([a−z\.]2,6); //正则

    return preg_match(regex,regex,str)

    9.简述如何得到当前执行脚本路径,包括所得到参数

    $argc --获取参数数量

    $argv --获取参数列表

    10.foo()和@foo()之间有什么区别?

    @代表所有warning忽略

    11.如何声明一个名为”myclass”的没有方法和属性的类?

    class myclass

    {

    }

    12.如何实例化一个名为”myclass”的对象?

    $myclass = new myclass();

    13.你如何访问和设置一个类的属性

    <?php

    class A{

    public $name='1';

    }

    $a=new A();

    n=a->name;

    print_r($n);

    14.mysql_fetch_row() 和mysql_fetch_array之间有什么区别?

    mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。

    mysql_fetch_row是从结果集取出1行数组,作为枚举

    mysql_fetch_array是从结果集取出一行数组作为关联数组,或数字数组,两者兼得

    $sql="select abc,def from a";

    $res=mysql_query($sql);

    那么:

    $row=mysql_fetch_row($res);

    $row结果是两个:$row[0]和$row[1]

    那么:

    $row=mysql_fetch_array($res);

    $row结果是4个:$row[0]、$row[1]、$row["abc"]和$row["def"]

    15.GD库是做什么用的?

    动态的开放的图片处理库

    16.请写出数据类型(int char varchar datetime text)的意思; 请问varchar和char有什么区别

    int 整型

    char 存储定长

    varchar 存储变长

    datetime 时间

    text 存储变长的

    varchar是变长

    char(20) 定长

    17.MySQ自增类型(通常为表ID字段)必需将其设为(?)字段

    auto_increment

    18.检测一个变量是否有设置的函数是否?是否为空的函数是?

    isset()

    empty()

    19.取得查询结果集总数的函数是?

    mysql_num_rows()

    20.$arr = array('james', 'tom', 'symfony'); 请打印出第一个元素的值

    print_r($arr[0]);

    print_r(current($arr));

    print_r(array_shift($arr));

    21.a=′abcdef′;请取出a=′abcdef′;请取出a的值并打印出第一个字母

    substr($a, 0, 1);

    22.请写出PHP5权限控制修饰符

    public    private    protected

    23.请写出php5的构造函数和析构函数

    public function __construct(){}

    public function __destruct(){}

    24.写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名

    $url='http://www.sina.com.cn/abc/de/fg.php?id=1&a=c&t=12';

    function getExt($url)

    {

    $pathArr=pathinfo($url);

    $str=$pathArr['extension'];

    list($type,$vars) =explode('?',$str);

    return$type;

    }

    function getExt($url){

    $arr=parse_url($url);

    $name=basename($arr['path']);

    $extArr=explode('.',$name);

    return $extArr[1];

    }

    function getExt($url){

    $arr=parse_url($url);

    $path=$arr['path'];

    $str=strrchr($path,'.');

    return $str;

    }

    25.写一个函数,算出两个文件的相对路径

    $a = '/a/b/c/d/e.php';

    $b = '/a/b/12/34/c.php';

    计算出 b相对于b相对于a 的相对路径应该是 http://www.cnblogs.com/12/34/c.php将添上

    26..写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。

    相关文章

      网友评论

          本文标题:PHP面试题集锦(1)

          本文链接:https://www.haomeiwen.com/subject/puzodxtx.html