PHP、mysql面試題 (附答案+實現代碼)

1.在PHP中,當前腳本的名稱(不包括路徑和查詢字符串)記錄在預約義變量(1)中;而連接到當前頁面的的前一頁面URL記錄在預約義變量(2)中javascript

  1. <?php
    php

  2. //本頁地址,SCRIPT_NAME也能夠:php/test.php
    java

  3. echo $_SERVER['PHP_SELF']."
    正則表達式

  4. ";
    apache

  5. //連接到當前頁面的前一頁面的 URL 地址:
    數組

  6. echo $_SERVER['HTTP_REFERER']."
    app

  7. ";
    函數


  8. //其它的見參考手冊:語言參考》變量》預約義變量
    ui

  9. //前執行腳本的絕對路徑名:D:Inetpubwwwrootphp est.php
    spa

  10. echo $_SERVER["SCRIPT_FILENAME"]."

  11. ";

  12. //正在瀏覽當前頁面用戶的 IP 地址:127.0.0.1

  13. echo $_SERVER["REMOTE_ADDR"]."

  14. ";

  15. //查詢(query)的字符串(URL 中第一個問號 ? 以後的內容):id=1&bi=2

  16. echo $_SERVER["QUERY_STRING"]."

  17. ";

  18. //當前運行腳本所在的文檔根目錄:d:inetpubwwwroot

  19. echo $_SERVER["DOCUMENT_ROOT"]."

  20. ";

  21. ?>

複製代碼

2.執行程序段<?php echo 8%(-2) ?>將輸出__。

  1. <?php

  2. //參考手冊》語言參考》運算符》算術運算符》%爲取模運算,輸出0

  3. echo 8%(-2)."

  4. ";

  5. //取模 $a % $b 在 $a 爲負值時的結果也是負值。輸出-2

  6. echo ((-8)%3)."

  7. ";

  8. //輸出2

  9. echo (8%(-3))."

  10. ";

  11. ?>

複製代碼

3.在HTTP 1.0中,狀態碼 401 的含義是____;若是返回「找不到文件」的提示,則可用 header 函數,其語句爲____。

答:401表示未受權;header("HTTP/1.0 404 Not Found");[見參考手冊》函數參考》HTTP函數》header]

4.數組函數 arsort 的做用是____;語句 error_reporting(2047)的做用是____。

答:arsort:對數組進行逆向排序並保持索引關係 error_reporting(2047)的做用是:report All errors and warnings

5.寫出一個正則表達式,過慮網頁上的全部JS/VBS腳本(即把script標記及其內容都去掉):

  1. <?php

  2. $script="如下內容不顯示:<script language='javascript'>alert('cc');</script>";

  3. echo preg_replace("/<script[^>].*?>.*?</script>/si", "替換內容", $script);

  4. ?>

複製代碼

6.以Apache模塊的方式安裝PHP,在文件http.conf中首先要用語句____動態裝載PHP模塊,
而後再用語句____使得Apache把全部擴展名爲php的文件都做爲PHP腳本處理。
答:LoadModule php5_module "c:/php/php5apache2.dll";AddType application/x-httpd-php .php

見參考手冊》目錄》II. 安裝與配置》6. Windows 系統下的安裝》Microsoft Windows 下的 Apache 2.0.x

7.語句 include 和 require 都能把另一個文件包含到當前文件中,它們的區別是____;爲了不屢次包含同一文件,能夠用語句____來代替它們。
答:在如何處理失敗時,include() 產生一個警告而 require() 則致使一個致命錯誤;require_once()/include_once()

8.一個函數的參數不能是對變量的引用,除非在php.ini中把____設爲on.
答:allow_call_time_pass_reference boolean :是否啓用在函數調用時強制參數被按照引用傳遞, 見參考手冊》附錄G

9.SQL 中LEFT JOIN的含義是__,若是 tbl_user記錄了學生的姓名(name)和學號(ID),
tbl_score記錄了學生(有的學生考試之後被開除了,沒有其記錄)的學號(ID)和考試成績(score)以及考試科目(subject),要想打印出各個學生姓名及對應的的各科總成績,則能夠用SQL語句____.

答:天然左外鏈接

  1. create database phpinterview;

  2. use phpinterview

  3. create table tbl_user

  4. (

  5.     ID                             int                            not null,

  6.     name                           varchar(50)                    not null,

  7.    primary key (ID)

  8. );

  9. create table tbl_score

  10. (

  11.     ID                             int                            not null,

  12.     score                          dec(6,2)                       not null,

  13.     subject                        varchar(20)                    not null

  14. );


  15. insert into tbl_user (ID, name) values (1, 'beimu');

  16. insert into tbl_user (ID, name) values (2, 'aihui');

  17. insert into tbl_score (ID, score, subject) values (1, 90, '語文');

  18. insert into tbl_score (ID, score, subject) values (1, 80, '數學');

  19. insert into tbl_score (ID, score, subject) values (2, 86, '數學');

  20. insert into tbl_score (ID, score, subject) values (2, 96, '語文');


  21. select A.id,sum(B.score) as sumscore

  22. from tbl_user A left join tbl_score B

  23. on A.ID=B.ID

  24. group by A.id

複製代碼

10. 在PHP中,heredoc是一種特殊的字符串,它的結束標誌必須____
答:結束標識符所在的行不能包含任何其它字符除";"

11.寫一個函數,可以遍歷一個文件夾下的全部文件和子文件夾。

  1. <?php

  2. function my_scandir($dir)

  3. {

  4.     $files=array();

  5.     if(is_dir($dir))

  6.      {

  7.         if($handle=opendir($dir))

  8.          {

  9.             while(($file=readdir($handle))!==false)

  10.              {

  11.                 if($file!="." && $file!="..")

  12.                  {

  13.                     if(is_dir($dir."/".$file))

  14.                      {

  15.                         $files[$file]=my_scandir($dir."/".$file);

  16.                      }

  17.                     else

  18.                      {

  19.                         $files[]=$dir."/".$file;

  20.                      }

  21.                  }

  22.              }

  23.             closedir($handle);

  24.             return $files;

  25.          }        

  26.      }   

  27. }

  28. print_r(my_scandir("D:Program FilesInternet ExplorerMUI"));

  29. ?>

相關文章
相關標籤/搜索