美文网首页
php面试题1

php面试题1

作者: 狂暴小绵羊 | 来源:发表于2020-11-22 16:34 被阅读0次
    1. include 和require 都能把另外一个文件包含到当前文件中,他们有什么区别? include和include_once 又有什么区别?

    二者的区别只有一个,那就是对包含文件的需求程度
    include 就是包含,如果被包含的文件不存在的话,那么则会提示一个错误,但是程序会继续执行下去。
    reruqire 意思就是需要,如果被包含文件不存在或者无法打开时候,则会提示错误并且终止程序的执行。
    俩者除了在如何处理失败之外完全一样
    once 的意思时一次,那么include_once和require_once表示只包含一次,避免重复包含

    1. 表单中get与post提交方法的区别?

    get请求能够被cache,get请求能够被保存在浏览器的浏览历史里面post 不进行缓存
    get 参数是带在url后面,传统ie中url的最大可用长度为2053字符,其他浏览器对url长度限制实现上有所不同。post 请求无长度限制
    get 提交数据大小,不同浏览器限制不同,一般在2k-8k之间,post提交数据比较大,大小靠服务器的设定值限制,而且某些数据只能用post方法携带,比如file.
    全部用post不是十分合理,最好先把请求按功能和场景分类,对数据请求频繁,数据不敏感且数据量在普通浏览器最小限制2k范围内,这样的情况使用get,其他地方使用post
    get的本质是得,而post的本质是给。而且get是幂的,在这一点上,get被认为是安全的。但实际上server端也可以用作资源更新,但是这种用法违反了约定,容易造成csrf(跨站请求访问)

    1. 用php 打印出前一天的时间

    echo date('Y-m-d H:i:s',tiem()-24*3600)echo date('Y-m-d H:i:s',strtotime('-1 day'))

    4.假设现在有一个字符串 ww.baidu.com 如何使用 PHP 对他进行操作使字符串以 moc.udiab.输出?

    $str='www.baidu.com;
    //先替换,再反转
    $str = str_replace('www','',$str);
    echo strrev($str);
    
    1. 用 php 写出显示客户端 IP 与服务器 IP 的代码

    客户端ip:$_SERVER['REMOTE_ADDR'] 服务器ip: $_SERVER['SERVER_ADDR']

    1. 计算某段字符串中某个字符串出现的次数

    echo substr_count($test,'g')

    1. 写一个函数,能够遍历一个文件夹下的所有文件和子文件夹
    function my_scandir($dir)
    {
        $files = array();
        if( $handle = opendir($dir)){
            while(($file = $readdir($handle)) !== false){
                if($file != ".." && $file != "."){
                  if(is_dir($dir."/".$flie)){
                    $file[file] = scandir($dir . '/' . $file);
                  }else{
                    $files[] = $file;
                  }
                }
            }
            closedir($handle);
            return $files;
        }  
    }
    
    1. 列出你所知道的全局变量

    $_ENV; $_SERVER; $_REQUEST; $_FILES; $_SESSION; $_COOKIE; $_GET; $_POST; $GLOBALS

    1. session 与 cookie 的区别

    seeion:存储用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放
    cookie:用来存储连续访问一个页面时所使用,是存贮在客户端,对cookie来说是存储在win的temp目录中

    1. 什么事面向对象?主要特征是什么?

    面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装,继承,多态。

    1. HTTP 状态中302、403、 500代码含义?

    一消息,二成功,三重定向,四请求错误,五服务器端错误
    302:临时转移成功,请求内容已转移到新的位置
    401:未授权
    403:禁止访问
    500: 服务器内部错误

    1. Linux下建立压缩包,解压缩包的命令

    打包:tar czf file.tar.gz file.text
    解压:tar xzf file.tar.gz

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

    int 整数 char定长字符串 Varchar变长字符串 Datetime 日期时间型 Text文本型
    Varchar是可变长度的字符类型,内容有多大就占多少空间,能有效节省空间。由于varchar类型是可变的,所以在数据长度改变时,服务器要进行额外操作所以效率比char类型低

    1. MyISAM和InnoDB的基本区别?索引结构如何实现

    MyISAM类型不支持事务,表锁,易产生碎片,要经常优化,读写速度较快
    InnoDB类型支持事务,行锁,有奔溃恢复能力。读写速度比MyISAM慢
    创建索引:alert table tablename add index('字段名')

    1. isset() 和 empty() 区别

    isset判断变量是否存在,可以传入多个变量,若其中一个变量不存在则返回假,
    empty判断变量是否为空为假,只可传一个变量,如果为空为假则返回真

    1. 如何在页面之间传递变量?

    get , post ,cookie, session, 隐藏表单

    1. 请写出常见的排序算法

    冒泡排序法, 快速排序法,简单选择排序法,堆排序法,直接插入排序法,希尔排序法,合并排序法

    1. error_reporting 这个函数的作用

    设置php 的报错级别并返回当前级别

    1. 你所知道的php 数组相关的函数
    • array() 创建数组
    • array_combine() 合并俩个数组来创建一个新数组
    • range() 创建并返回一个指定范围的元素数组
    • compact() 建立一个数组
    • array_chunk() 将数组分割成多个
    • array_merge() 将俩个或多个数组合并成一个数组
    • array_slice() 根据条件获取数组的一段值
    • array_diff() 返回俩个数组的差集
    • array_intersect() 返回俩数组交集
    • array_search() 在数组中搜索给定的值
    • array_splice() 移除数组的一部分并替换它
    • array_key_exists 判断数组是否存在指定的key
    • shuffle() 将数组元素乱
    • array_flip() 交换数组中的键和值
    • array_reverse() 将原数组顺序翻转,创建新的数组并返回
    • array_unique() 移除数组中的重复值
    1. php读取文件内容的几种方法和函数?

    打开文件然后读取:Fopen();fread()
    打开读取一次完成: file_get_contents()

    20 说说你对缓存技术的了解?

    1、缓存技术是将动态内容缓存到文件中,在一定时间内访问动态页面直接调用缓存文件,而不必重新访问数据库。
    2、使用memcache可以做缓存。

    1. 你所知道的设计模式有哪些

    工厂模式、策略模式、单元素模式、观察者模式、命令链模式

    1. 你常用到的mysql命令
    show databases
    show tables
    inset into 表名 ()values()
    Update 表名 set 字段=值 where ...
    Delete from 表名 where ...
    Select * from 表名 where 条件 order by ... Desc/asc limit ..... Group by ... Having
    

    相关文章

      网友评论

          本文标题:php面试题1

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