• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

2018php最新面试题之PHP核心技术

php 搞代码 3年前 (2022-01-21) 19次浏览 已收录 0个评论

这篇文章给大家分享的是关于2018php面试题之PHP核心技术最新,有需要的朋友可以参考一下。

一、PHP核心技术

1.写出一个能创建多级目录的PHP函数(新浪网技术部)

<?php    /**     * 创建多级目录     * @param $path string 要创建的目录     * @param $mode int 创建目录的模式,在windows下可忽略     */    function create_dir($path,$mode = 0777)    {        if (is_dir($path)) {            # 如果目录已经存在,则不创建            echo "该目录已经存在";        } else {            # 不存在,创建            if (mkdir($path,$mode,true)) {                echo "创建目录成功";            } else {                echo "创建目录失败";            }        }    }?>

2.写出smarty模板的特点(新浪网技术部)

速度快,编译型,缓存技术,插件机制,强大的表现逻辑¥本文来源gaodai#ma#com搞@@代~&码网^搞gaodaima代码

3.打开php.ini中的safe_mode,会影响哪些函数?至少说出6个。(新浪)

safe_mode,PHP安全模式,它提供一个基本安全的共享环境,在一个有多个用户账户存在的php开发的web服务器上。当安全模式打开的时候,一些函数将被完全的禁止,而另一些函数的功能将会受到限制,如:chdir,move_uploaded_file,chgrp,parse_ini_file,chown,rmdir,copy,rename,fopen,require,mkdir,unlink等。
注意,在php5.3以上版本,safe_mode被弃用,在php5.4以上版本,则将此特性完全去除了。

4.抓取远程图片到本地,你会用什么函数?(51.com笔试题)

file_get_contents或者curl

5.PHP的垃圾收集机制是怎样的(腾讯)

PHP可以自动进行内存管理,清除不再需要的对象。
PHP使用了引用计数(reference counting)这种单纯的垃圾回收(garbage collection)机制。每个对象都内含一个引用计数器,每个reference连接到对象,计数器加1。当reference离开生存空间或被设为NULL,计数器减1。当某个对象的引用计数器为零时,PHP知道你将不再需要使用这个对象,释放其所占的内存空间。

6.请写一段PHP代码,确保多个进程同时写入同一个文件成功(腾讯)

核心思路:加锁

<?php    $fp = fopen("lock.txt","w+");    if (flock($fp,LOCK_EX)) {        //获得写锁,写数据        fwrite($fp, "write something");         // 解除锁定        flock($fp, LOCK_UN);    } else {        echo "file is locking...";    }    fclose($fp);?>

7.写一个函数,尽可能高效的,从一个标准url里取出文件的扩展名,例如:http://www.sina.com.cn/abc/de/fg.php?id=1需要取出php或.php(新浪)

<?php    // 方案一    function getExt1($url){        $arr = parse_url($url);        //Array ( [scheme] => http [host] => www.sina.com.cn [path] => /abc/de/fg.php [query] => id=1 )         $file = basename($arr['path']);        $ext = explode('.', $file);        return $ext[count($ext)-1];    }     // 方案二    function getExt2($url){        $url = basename($url);        $pos1 = strpos($url,'.');        $pos2 = strpos($url,'?');         if (strstr($url,'?')) {            return substr($url,$pos1+1,$pos2-$pos1-1);        } else {            return substr($url,$pos1);        }     }     $path = "http://www.sina.com.cn/abc/de/fg.php?id=1";    echo getExt1($path);    echo "<br />";    echo getExt2($path);?>

相关题目:使用五种以上方式获取一个文件的扩展名,要求:dir/upload.image.jpg,找出.jpg或者jpg,必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如get_ext1(file_name)


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:2018php最新面试题之PHP核心技术

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址