首頁 >後端開發 >php教程 >php初級面試題之程式設計題(一)

php初級面試題之程式設計題(一)

韦小宝
韦小宝原創
2017-11-17 09:54:452222瀏覽

PHP初級面試題是剛要找工作的沒什麼經驗的程式設計師看的,這對我們出去面試提供了不小的幫助,面試官會常常的考到我們,而這時候看的面試題就起了大作用了。

1. 寫一個函數,盡可能有效率的,從一個標準 url 取出檔案的副檔名

   例如: http:/ /www.php.cn/course.html 需要取出 html或 .html

#答案一:

function getExt($url){
   $arr = parse_url($url);
   
   $file = basename($arr['path']);
   $ext = explode(".",$file);
   return $ext[1];
}

答案二:

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, &#39;..&#39;));   
    }   
       
    $returnPath = array_merge($returnPath, array_slice($arrA, $n));   
    return implode(&#39;/&#39;, $returnPath);   
}   
   echo getRelativePath($a, $b);

4.寫一個函數,能夠遍歷一個資料夾下的所有檔案和子資料夾。 ##答:

function my_scandir($dir)
{
     $files = array();
     if ( $handle = opendir($dir) ) {
         while ( ($file = readdir($handle)) !== false ) {
             if ( $file != ".." && $file != "." ) {
                 if ( is_dir($dir . "/" . $file) ) {
                     $files[$file] = scandir($dir . "/" . $file);
                 }else {
                     $files[] = $file;
                 }
             }
         }
         closedir($handle);
         return $files;
     }
}

以上面試題看完不要急,還有別的面試題,基礎的東西最好都鞏固一下,有助於我們面試找工作。

##相關推薦:

php初級面試題之簡述題(一)

#php初級面試題之簡述題(二)php初級面試題之簡述題(三)

#php初級面試題之簡述題(四)

以上是php初級面試題之程式設計題(一)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn