近來為了公司內部專案要學習php,今天是我接觸php的第3天~
用試題把關鍵知識強化一下~
1、在php中,當前指令碼的名稱(不包括路徑和查詢字串)記錄在預定義變數[①]中;而鏈結 到當前頁面的url記錄在預定義變數[②]中 [1]$_server['php_self'] [2]$_server["http_referer"]
2、陣列函式 arsort 的作用是[①];語句 error_reporting(2047)的作用是[②]
[1]對陣列進行逆向排序並保持索引關係 [2]all errors and warnings
4、乙個函式的引數不能是對變數的引用,除非在php.ini中把[①]設為on
[1]allow_call_time_pass_reference
5、在php中,heredoc是一種特殊的字串,它的結束標誌必須[①]
結束識別符號所在的行不能包含任何其它字元除";"
6、寫出下列**的結果
: <?php $a="hello world!"; $b=$a; print("/$b=$b
"); print('$a=$a
'); ?>
$b=hello world!
$a=$a
7、寫出下列**輸出結果
: <?php $a="first"; $b=&$a; $c=$a; $a="second"; print("$a,$b,$c
"); ?>
second,second,first 8
、寫出下列**輸出結果
: <?php $a=2; $b="1.2sbc3"; $c="efg"; $result1=$a.$b; $result2=$a*$b; $result3=$a*$c; print("$result1,$result2,$result3
"); ?>
21.2sbc3,2.4,0
9、找出下列**中的錯誤並修正
: <?php $a[0]=""ryan; $b["value"]=785.9; $c["blue"][0]="ada"; print("$a[0],$b["value"],$c["blue"][0]
"); ?>
<?php $a[0]="ryan"; $b["value"]=785.9; $c["blue"][0]="ada"; print("$a[0]"."$b[value]".""."
"); ?>
10、試述isset()和empty()的區別
isset() 測試變數是否存在 empty() 測試變數是否為空
11、請用盡可能少的語句實現對輸入email位址進行驗證的功能
eregi('^[_a-z0-9]+(/.[_a-z0-9-]+)*@[a-z0-9]+(/.[a-z0-9-]+)*$',$emailaddress)
12、寫出乙個正規表示式,過慮網頁上的所有js/vbs指令碼(即把script標記及其內容都去掉)
/].*?>.*?/si
13、語句 include 和 require 都能把另外乙個檔案包含到當前檔案中,它們的區別是什麼?如何避免同一檔案被多次載入?
1.發生異常時include產生警告require產生致命錯誤 2.require_once()/include_once()
14、類的屬性可以序列化後儲存到 session 中,從而以後可以恢復整個類,這要用到的函式是哪些?
serialize() /unserialize()
15、寫乙個函式,能夠遍歷乙個資料夾下的所有檔案和子資料夾
/*** 遍歷目錄,結果存入陣列。支援php4及以上。php5以後可用scandir()函式代替while迴圈。
* @param string $dir
* @return array
*/function my_scandir($dir)
else }}
closedir($handle);
return $files;}}
16、使用php描述氣泡排序和快速排序演算法,物件可以是乙個陣列
/氣泡排序(陣列排序)
function bubble_sort($array)}}
return $array;
}//快速排序(陣列排序)
function quick_sort($array)
17、使用php描述順序查詢和二分查詢(也叫做折半查詢)演算法,順序查詢必須考慮效率,物件可以是乙個有序陣列
//二分查詢(陣列裡查詢某個元素)
function bin_sch($array, $low, $high, $k)elseif ($k < $array[$mid])else
}return -1;
}//順序查詢(陣列裡查詢某個元素)
function seq_sch($array, $n, $k)
}if ($i<$n)else
}18、寫乙個二維陣列排序演算法函式,能夠具有通用性,可以呼叫php內建函式
function array_sort($arr, $keys, $order=0)
$keysvalue = array();
foreach($arr as $key => $val)
if($order == 0)else
reset($keysvalue);
foreach($keysvalue as $key => $vals)
$new_array = array();
foreach($keysort as $key => $val)
return $new_array;
}19、提交了乙個有8mb資料的表單,但程式只接收到4mb資料,可能的原因有哪些?
php.ini 2項設定
20、echo(),print(),print_r()的區別
echo是php語句, print和print_r是函式,語句沒有返回值,函式可以有返回值(即便沒有用) print只能列印出簡單型別變數的值(如int,string) print_r可以列印出複雜型別變數的值(如陣列,物件)
21、如何獲得訪問者ip
$_server['remote_addr'];
22、utf-8轉換成gbk的函式是?
iconv("gbk",""utf-8,"我們"); mb_convert_encoding($str, "gbk", "utf-8")
23、hp中分割字串成陣列的函式和連線數組成字串的函分別有哪些?
explode() split() ;implode() join()
24、有三個php檔案位於同一目錄下,內容為 a.php <?php function fa() ?> b.php: <?php include 『a.php』; ?> <?php function fb() ?> c.php: <?php include 『a.php』; ?> <?php include 『b.php』; ?> <?php fa(); fb(); ?> 使用瀏覽器訪問 c.php,請問是否存在問題。如果存在問題,請指出修正方法並寫出瀏覽器檢視效果如果不存在問題,請寫出瀏覽器檢視效果
開啟錯誤輸出的情況 error:function already defined 未開啟,白頁 include換成include_once
PHP基礎測試題(一)
1.echo,print printf print r var dump sprintf 區別 echo 是乙個語句,其它的是函式,echo可以輸出多個值,效率高。print 只可以輸出乙個值,print 有返回值 正常輸出返回1 riintf 是乙個格式化輸出 d f s print r 輸出陣列...
強化學習 一 基礎認知
強化學習是想讓乙個智慧型體 agent 在不同的環境狀態 state 下,學會選擇那個使得獎賞 reward 最大的動作 action agent在 t 時刻,通過觀測環境得到自己所在的狀態 state 接下來agent根據策略 policy 進行決策後,做出乙個動作 action 這個action...
一 強化學習 RL 基礎
1.初探強化學習 1.什麼是強化學習?2.強化學習可以解決什麼問題?強化學習如何解決這些問題?2.強化學習 監督學習和非監督學習1.監督學習解決的是什麼問題?監督學習如何解決這些問題?2.強化學習與監督學習的差異 3.強化學習與非監督學習的差異 3.強化學習基礎理論 3.1.強化學習模型 ta t ...