php高级面试题有哪些

发布时间:2021-05-06 11:23:27 作者:小新
来源:亿速云 阅读:166

小编给大家分享一下php高级面试题有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

PHP开发环境搭建工具有哪些

一、phpStudy,是一个新手入门最常用的开发环境。二、WampServer,WampServer也同样的也是和phpStudy一样操作简单对小白比较友好。三、XAMPP,XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包;四、MAMP,MAMP分为两种MAMP和MAMP Pro for Mac。五、宝塔面板,宝塔面板是一款服务器管理软件,支持windows和linux系统。六、UPUPW,UPUPW是目前Windows平台下最具特色的Web服务器PHP套件。

除了做程序需要强大的理论支撑外,面试的时候,对于知识点的考察也会有所涉及。对于面试一些高级的php岗位来说,理论的考察会更加细化,在使用技巧和程序运行方面都会有所涉及,这和php初级面试题中只考察纯理论有很大的不同。

1.sql语言分4大类请列举

(1)DDL--CREATE,DROP,ALTER

(2)DML--INSERT,UPDATE,DELETE

(3)DQL-SELECT

(4)DCL--GRANT,REVOKE,COMMIT,ROLLBACK

2.谈谈关于索引的一些技巧

(1)要在区分度高的字段上建立索引,否则索引意义不大。

(2)字符串建立索引要注意大小,索引长度过长,占用的空间也就越大,适当的可以截取进行索引,缺点是不能使用到覆盖索引,具体根据业务合理安排。

(3)建立联合索引要知道最左前缀原则,举个例子( name, email, phone ),最终能走这个联合索引的一定只会是 ( name ),( name, email ),( name, email, phone ),其他只能走全表,需要根据业务合理设置联合索引的顺序。

3.PECL 和 PEAR 的区别

PECL (PHP Extension Community Library) 可以看作 PEAR (PHP Extension and Application Repository) 的一个组成部分,提供了与 PEAR 类似的功能。不同的是 PEAR 的所有扩展都是用纯粹的 PHP 代码编写的,用户在下载到 PEAR 扩展以后可以直接使用将扩展的代码包含到自己的 PHP 文件中使用。而 PECL 是使用 C 语言开发的,通常用于补充一些用 PHP 难以完成的底层功能,往往需要重新编译或者在配置文件中设置后才能在用户自己的代码中使用。

最直接的表述:PEAR 是 PHP 的上层扩展,PECL 是 PHP 的底层扩展。它们都是为特定的应用提供现成的函数或者类。

4.写一个函数,获取一篇文章内容中的全部图片,并下载

function download_images($article_url = '', $image_path = 'tmp'){
 
    // 获取文章类容
    $content = file_get_contents($article_url);
 
    // 利用正则表达式得到图片链接
    $reg_tag = '/<img.*?\"([^\"]*(jpg|bmp|jpeg|gif|png)).*?>/';
    $ret = preg_match_all($reg_tag, $content, $match_result);
    $pic_url_array = array_unique($match_result1[1]);
 
    // 创建路径
    $dir = getcwd() . DIRECTORY_SEPARATOR .$image_path;
    mkdir(iconv("UTF-8", "GBK", $dir), 0777, true);
 
    foreach($pic_url_array as $pic_url){
        // 获取文件信息
        $ch = curl_init($pic_url);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_NOBODY, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE );
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE );
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $fileInfo = curl_exec($ch);
        $httpinfo = curl_getinfo($ch);
        curl_close($ch);
 
        // 获取图片文件后缀
        $ext = strrchr($pic_url, '.');
        $filename = $dir . '/' . uniqid() . $ext;
 
        // 保存图片信息到文件
        $local_file = fopen($filename, 'w');
        if(false !== $local_file){
            if( false !== fwrite($local_file, $filecontent) ){
            fclose($local_file);
            }
        }
    }
 
}

看完了这篇文章,相信你对“php高级面试题有哪些”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. PHP高级面试题
  2. 高级iOS面试题有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:php初级面试题有哪些

下一篇:php开发框架的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》