php面試題集-基礎程式題

來源:互聯網
上載者:User
基礎程式題


用PHP列印出前一天的時間格式是2006-5-10 22:21:21
date('Y-m-d H:i:s', strtotime('-1 day'));

如何?字串翻轉?
方法一:
方法二: 

 

寫一個函數,能夠遍曆一個檔案夾下的所有檔案和子檔案夾。
 

請寫一個函數驗證電子郵件的格式是否正確
 

有一個網頁地址, 比如PHP開發資源網首頁: http://www.phpres.com/index.html,如何得到它的內容?
方法一(對於php5及更高版本):
方法二: 

 

如何得到當前執行指令碼路徑,包括所得到參數。
說明:例如有一個指令碼 www.domain.com, 傳給他的參數有參數1,參數2,參數3….傳遞參數的方法有可能是GET有可能是POST,
那麼現在請寫出類似http://www.domain.com/script.php? 參數1=值1&參數2=值2..... 的結果
暫無答案

寫一個排序演算法,可以是冒泡排序或者是快速排序,假設待排序對象是一個一維數組。
(提示:不能使用系統已有函數,另外請仔細回憶以前學習過的基礎知識)
quick_sort( $left_arr );        $right_arr = $this->quick_sort( $right_arr );        return array_merge( $left_arr, array( $key ), $right_arr );    }    /**     *  希爾排序     */    public function shell_sort( $datas ) {        //分組          for ( $increment = count( $datas ) / 2; $increment > 0; $increment = $increment / 2 ) {            //每個組內排序              for ( $i = $increment; $i < count( $datas ); $i++ ) {                $temp = $datas[$i];                $j = 0;                for ( $j = $i; $j >= $increment; $j = $j - $increment ) {                    if ( $temp < $datas[$j - $increment] ) {                        $datas[$j] = $datas[$j - $increment];                    } else {                        break;                    }                }                $datas[$j] = $temp;            }        }        return $datas;    }}?> 

有一表 menu(mainmenu, submenu, url), 請用遞迴法寫出一樹形菜單,將所有的menu列出來。
暫無答案

給你三個數,寫程式求出其最大值。
暫無答案

有一數組 $a=array(4,3,8,9,2);請將其重新排序,按從小到大的順序列出。
暫無答案

寫出匹配郵箱地址和URL的兩個Regex。類似下面的:
郵箱地址:user_name.first@example.com.cn
URL地址:http://www.example.cpm.cn/user_profile.php?uid=100
(提示:使用標準的Regex,就是php中preg_*類的正則處理函數能夠解析的正則)
郵箱:/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
URL:/^http:\/\/[\w]+\.[\w]+[\S]*/

用php寫一段代碼,實現不使用第3個變數,交換$a、$b的值,$a、$b的初始值自己定。
 

寫一個函數,儘可能高效的,從一個標準 url 裡取出檔案的副檔名
例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php
答案1:
  
答案2:
  

寫一個函數,算出兩個檔案的相對路徑
如 $a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';
計算出 $b 相對於 $a 的相對路徑應該是 ../../c/d
 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 );?> 
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.