<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            PHP基礎語言方面的筆試題和答案

            時間:2025-05-12 09:19:03 php語言 我要投稿
            • 相關推薦

            PHP基礎語言方面的筆試題和答案

              伴隨著Facebook的成功,PHP這門解釋型的Web開發語言由于其清晰的定位繼續受到非常多的關注,當然對于中小企業和個人來說,Linux+Apache/Nginx+PHP+MySQL幾乎不用考慮服務器環境方面的成本;而對于開發者來說,在中小型項目開發中PHP也非常容易上手。以下是百分網小編精心為大家整理的PHP基礎語言方面的筆試題和答案,希望對大家有所幫助!更多內容請關注應屆畢業生網!

            PHP基礎語言方面的筆試題和答案

              1. 用PHP打印出前一天的時間,格式是2006-5-10 22:21:21

              echo date("Y-m-d H:i:s",time()-60*60*24);

              echo date("Y-m-d H:i:s",strtotime("-1 day"));

              ?>

              2. echo(),print(),print_r()的區別

              echo 是語言結構,無返回值;print 功能和echo基本相同,不同的是print是函數,有返回值;print_r 是遞歸打印,用于輸出數組對象。

              3. 能夠使HTML和PHP分離開使用的模板引擎

              PHP模板引擎和框架是PHP面試題里面必考的一些知識點,總的來說,了解smarty或者國內比較不錯的ThinkPHP都可以應對這類的問題,其實PHP這門語言本身也就是一個模板引擎。當然對實際應用的來說,大量使用正則的PHP模板引擎會提高后他開發和前端開發的效率,但是肯定會犧牲首次加載的效率。我在一位大牛的文章中看到過Blitz這個模板引擎,據說是使用C++寫的PHP擴展,號稱是速度最快的模板引擎,有興趣的可以去了解一下。

              4. 如何實現字符串翻轉?

              PHP本身就有字符串翻轉的函數:strrev(),當然也可以定義簡單的函數來完成,下面的方法一和方法二只能翻轉非漢字字符串,方法三用來翻轉字符串。

              //方法一:PHP系統函數

              echo strrev("ABCDEF")."

              ";

              //方法二:自定義函數,不能翻轉漢字。

              function myStrrev($str)

              {

              $newStr = "";

              for($i=0;$i

              {

              $newStr = $str[$i].$newStr;

              }

              return $newStr;

              }

              echo myStrrev("ABCDEF")."

              ";

              //方法三,翻轉漢字

              $newcnStr ="";

              $cnStr = str_split("我愛你",3);//每個漢字占3個字節

              //也可以使用array_reverse()翻轉后輸出

              for($j=count($cnStr)-1;$j>=0;$j--)

              {

              $newcnStr .=$cnStr[$j];

              }

              echo $newcnStr;

              ?>

              5. 執行程序段將輸出__?

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

              echo 8%(-2)."

              ";

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

              echo ((-8)%3)."

              ";

              //輸出2

              echo (8%(-3))."

              ";

              ?>

              6. 語句 include 和 require 都能把另外一個文件包含到當前文件中,它們的區別是____;為了避免多次包含同一文件,可以用語句____來代替它們?

              答:在如何處理失敗時,include() 產生一個警告而 require() 則導致一個致命錯誤;require_once()/include_once()

              7. 寫一個函數,能夠遍歷一個文件夾下的所有文件和子文件夾。

              別人寫的代碼,已經足夠簡潔和給力了。

              [php] view plain copy print?

              function my_scandir($dir)

              {

              $files=array();

              if(is_dir($dir))

              {

              if($handle=opendir($dir))

              {

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

              {

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

              {

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

              {

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

              }

              else

              {

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

              }

              }

              }

              closedir($handle);

              return $files;

              }

              }

              }

              echo "

              ";

              print_r(my_scandir("D:\DouJia-3.5"));

              ?>

              8. 你如何利用 PHP 解決 HTTP 的無狀態本質?

              最主要的倆各選擇是session和cookie。使用session的方法是在每一頁的開始加上 session_start(),然后利用$_SESSION散列表來儲存session變量。至于cookie你只需記著一個原則:在輸出任何文字之前調用set_cookie()函式,可以參考PHP會話管理之Cookie的使用,此外只需使用 $_COOKIE 散列表便可以存取所有 cookie 變量。

              還有一個不那么可靠的方法,就是利用訪客的 IP 地址,這個方法有特定的危險性。

              9. 有一個一維數組,里面存儲整形數據,請寫一個函數,將他們按從大到小的順序排列,要求執行效率高,并說明如何改善執行效率(該函數必須自己實現,不能使用php函數)。

              學習C語言的時候各種排序方法是必須掌握的基本概念,尤其是冒泡排序法是程序員都很熟悉的算法,其他的可以查看這篇很古老的文章:http://blog.csdn.net/rerli/archive/2003/12/15/19040.aspx,顯然C/C++里面的指針和堆可以實現一些快速高效但是不穩定的算法,PHP里面保守一些還是采用穩定性比較好,算法時間復雜度適中的冒泡排序法。

              function BubbleSort(&$arr)

              {

              $cnt=count($arr);

              $flag=1;

              for($i=0;$i<$cnt;$i++)

              {

              if($flag==0)

              {

              return;

              }

              $flag=0;

              for($j=0;$j<$cnt-$i-1;$j++)

              {

              if($arr[$j]>$arr[$j+1])

              {

              $tmp=$arr[$j];

              $arr[$j]=$arr[$j+1];

              $arr[$j+1]=$tmp;

              $flag=1;

              }

              }

              }

              }

              $test=array(1,3,6,8,2,7);

              BubbleSort($test);

              echo "";

              var_dump($test);

              ?>

              10. 以下哪一句不會把 John 新增到 users 陣列?

              PHP中一些數組函數和字符串函數是基礎中的基礎。

              $users[] = "john";

              //成功把 John 新增到陣列 users。

              array_add($users,"john");

              //函式 array_add() 無定義。

              array_push($users,"john");

              //成功把 John 新增到陣列 users,參考array_push()函數。

              $users ||= "john";

              //語法錯誤,不存在這個運算符。

              ?>

              第一次總結,就這么多吧,有時間準備更讓我雞動的正則表達式和數據庫方面的試題。

            【PHP基礎語言方面的筆試題和答案】相關文章:

            Java語言基礎試題及答案06-06

            php語言基礎入門02-06

            PHP語言基礎及規范12-29

            php語言基礎知識06-15

            PHP語言基礎知識07-16

            Java語言基礎測試題及答案01-31

            精選php面試題及答案06-01

            PHP面試題及答案06-27

            php語言基礎知識匯總04-11

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看