青岛PHP培训
青岛达内职业培训学校

18300268127

热门课程

达内PHP_面试笔试题--编程题

  • 时间:2018-06-15 15:53
  • 发布:青岛达内
  • 来源:青岛PHP培训机构

编程题:
1. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名
   例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php
答案1:
   function getExt($url){
   $arr = parse_url($url);
   
   $file = basename($arr['path']);
   $ext = explode(".",$file);
   return $ext[1];
}
答案2:
    function getExt($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);
    }
}


2. 在 HTML 语言中,页面头部的 meta 标记可以用来输出文件的编码格式,以下是一个标准的 meta 语句
请使用 PHP 语言写一个函数,把一个标准 HTML 页面中的类似 meta 标记中的 charset 部分值改为 big5
请注意:
1. 需要处理完整的 html 页面,即不光此 meta 语句
2. 忽略大小写
    3. ' 和 " 在此处是可以互换的
    4. 'Content-Type' 两侧的引号是可以忽略的,但 'text/html; charset=gbk' 两侧的不行
5. 注意处理多余空格

3. 写一个函数,算出两个文件的相对路径
如 $a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';
计算出 $b 相对于 $a 的相对路径应该是 ../../c/d将()添上
答:function getRelativePath($a, $b) {   
    $returnPath = array(dirname($b));   
    $arrA = explode('/', $a);   
    $arrB = explode('/', $returnPath[0]);   
    for ($n = 1, $len = count($arrB); $n < $len; $n++) {   
        if ($arrA[$n] != $arrB[$n]) {   
            break;   
        }    
    }   
    if ($len - $n > 0) {   
        $returnPath = array_merge($returnPath, array_fill(1, $len - $n, '..'));   
    }   
       
    $returnPath = array_merge($returnPath, array_slice($arrA, $n));   
    return implode('/', $returnPath);   
   }   
   echo getRelativePath($a, $b); 
上一篇:青岛PHP培训班_面试笔试题--填空题
下一篇:青岛PHP培训机构_面试笔试题--选择题

马上预约七天免费体验课

姓名:

电话:

达内PHP_面试笔试题--编程题

选择城市和中心
贵州省

广西省

海南省

达内教育

有位老师想和您聊一聊