本文主要跟大家分享php基礎問答知識小結,希望能幫助大家。
01.輸出為Mozilla/4.0(compatible;MSIE5.01;WindowNT5.0)時,可能的輸出語句是:
A. $_SERVER['HTTP_USER_AGENT_TYPE'];
B.$_SERVER['HTTP_USER_AGENT'];
C.$_SERVER['USER_AGENT']
C.$_SERVER['USER_AGENT'];
##']; D.$_SERVER['AGENT']; 02.下列功能PHP無法實現的是: A.伺服器端腳本運作B.命令列腳本執行
C.用戶端圖形介面(GUI)程式
D.瀏覽器端執行DOM動作# D.瀏覽器端執行DOM動作
03.以下說法不正確的是: A.PHP有四種標量類型:布林型(boolean),整數(integer),浮點型(float),字符串(string) B.浮點型(float)與雙精確型(double)是同一種型別
C.複合型別包含:陣列(array ),物件(object),資源(resource)
D.偽類型:混合型(mixed),數位型(number),回呼(callback)
#04.執行下面的代碼後,
Echo function_exists('print'); ?>
1. Function_exists判斷函數是否存在,回傳true或false
2. Print本身不是函數,而是一種語言結構
3.Echofalse 什麼都沒有
得到的輸出是:
A.空
B.true
C.false
D.FALSE
05.下非PHP文法的組成部分的函數是:
A.array
B.eval
## C.each# D.list
Echoprint 06.執行下面的程式碼的結果是什麼? $bool=TRUE; Echo gettype($bool);##
?> A.boolean
B.boolean0
C.booleanFALSE
C.booleanFALSE
#C D.
# *07.寫出下列程式碼執行的結果: ## $a=12;$a=12;
=012;
$c=0x12; Echo $a,"\n",$b,"\n",$c; ##
12\n10\n18
######### ###08.下面程式碼的執行結果是什麼?
Echo 1+2+"3+4+5";
## ?>##卷
B.3C.6
D."33+4+5";
09 .下面程式碼加入下面那個函數後返回TRUE: Return ?=='A'; A.ord(65) 根據字符,返回ascii碼值#B.chr(65)
根據ascii碼值,傳回對應的字元 A==65 a==97 C.65+''
D.''+65 10.下面程式碼的輸出正確的是: $a= array(1=>5,5=>8,22,2=>'8',81); Echo $a[7];//81# Echo $a[7];//81 $a[6];//22 Echo $a[3]; ?> A.空2281 B.空8122C. 8122空 D.空空
11.以下程式碼的輸出結果: # $a[bar] ='hello'; Echo $a[bar];//hello echo $a['bar'];//hello## echo $a['bar'];//hello
## o ?>## A.hello B.空空C.封包錯誤
D.hellohello
*12.寫出下列程式碼的結果:
#
Echo 1>>0; 0001
Echo 2>>1; 0010-< 011 -> 1100
?>
# A.012 B.106
C.1112D.123
##13 。以下對於echo,print的描述正確的是:## A.echo,print都可以列印多個參數
B.print可以列印多個參數,echo不可以
C.echo
可以列印多個參數,print不行 D.echo,print都不可以列印多個參數 #14.對於下面的程式碼
$fruits= array('strawberry'=>'red','banana'=>'yellow');
?>
能夠正確取得結果'yellow'的程式碼是:
A.echo"A banana is {$fruits['banana']}";
B.echo"A banana is $fruits['banana']" ;
C.echo"A banana is {$fruits[banana]}";
D.echo"A banana is $fruits[banana]";
n
# 15.以下程式碼執行完成後的結果是什麼?Function change(){ Static$i Return$ i;
} Printchange(); Printchange(# 12 16.以下程式碼的執行後是,$result值為: $ srcArray=array('a','b','c','d');$randValue=array_rand($srcArray); $result=is_string($rand)## ; ?>
1. #array_rand回傳什麼? 2.Is_string()
# A 、aB
、
#false
C、trueb E、c17.輸出的是?A、3## B、false
C、null
D、1#1#1
#1#1
1 ######### E、0#######18.以下程式碼的執行後是,$result值為:###### # ##### A、1##### ###B、2######### C、3##### D、4###### E、55 ###### ###### ######19.php函數名稱是否區分大小寫?###### ###A###、不區分############################################################### ##B、區分
20.以下程式碼的執行後是,$result值為:
$x=””;
$result=is_null($x);
?>
A、null
B、true
# ##C、false D、1
##
21 .哪一種OOP設定模式能讓類別在整個腳本裡只實例化一次?
A、MVC
## B、代理模式 C、狀態型模式## D、抽象工廠模式
#
#采采##E、單件模式
22.借助繼承,我們可以建立其他類別的衍生類別。那麼在PHP中,子類別最多可以繼承幾個父類別?
A、1個
B、2個
C、取決於系統資源
D、3個
E、想要幾個有幾個
23.下列哪一種錯誤型別無法被自訂的錯誤處理器捕捉到?(雙選)set_error_handler
A、E_WARNING
B
、#E_USER_ERROR## ## 、
E_PARSE D、
E_NOTICE# #
24.執行下列程式碼,輸出結果是 Abstract class a{ Function __construct(){ Echo 「a」; } }# #>
A、a B、一個錯誤警告C、一個致命性的錯誤
# #25.執行以下程式碼,輸入結果為 Class a{ ”; }# }# Echo 「Echo Classb Something」;
}
}
$a=new b();## B 、echoclassbsomethingechoclassasomething
C、echoclassassomething
D、echo class b something
## #26.以下哪個選項沒有將john加入users陣列? 2分
(A) $users[] = 'john'; (B) array_push($users, 'john');(C )
$users||= 'john';(D) array_unshift($users, 'john');
# 27.在PHP中,'+'運算元的功能不包括2分A.字串連接
B.陣列資料合併 array(0=> ;1,1=>2)+array(2=>3,3=>4)C.變數資料相加
#28.下列哪個表達式不能將兩個字串$s1和$s2串連成一個單獨的字串? ( )A.$s1+$s2
卷',array($s1,$s2)) E.以上所包含的方法都能實現29.以下的腳本運作以後,$array陣列所包含的數值為何? ( )
$array = array('1','1'); foreach($array as $k=>$v){## $ = 2;
}
A.array('2','2')
B.array('1','1#') C.array(2, 2) D.array(Null,Null) 30.array_shift()函數的功能是? A 在陣列中新增一個元素
B 移除陣列中的一個元素# C 交換一個陣列的key和value
array_flip()D 清除一個陣列##填空
1、執行程式段 php echo 8%(-2) ?>將輸出___0
_。 *2、以Apache模組的方式安裝PHP,在檔案httpd.conf中首先要用語句__LoadModule php5_module"F:/wamp/php-5.2.6-win32/php5apache2_2. dll"__動態裝載PHP模組,然後再用語句__ AddTypeapplication/x-httpd-php .php
__使得Apache把所有擴展名為php的檔案都當作PHP腳本處理。3、類別的屬性可以序列化後保存到session中,以便以後可以恢復整個類,這要用到的函數是_serialize
___。4、__debug_backtrace___函數能傳回腳本裡的任意行中所呼叫的函數的名稱。該函數同時也常被用在偵錯中,用來判斷錯誤是如何發生的。
5、$str="cd";
$$str="abcde"; $cd= ok」; $cd .= 「ok」;
echo$cd; ___
abcdeok____
讀題
1、(5分)請指出下列程式碼的錯誤之處(圈起來並加以修正)
function baz($y
,
$a) { /$x =new Array();
$x['sales'] = 60; xas $key =>
##$value) { echo$key + “ ” + $value + “<ltmm;BR>”;'j]; # } }1 ; $c=40; $a=$b>$c?
4:5;
echo $a;##:5;
echo $a;
# 4
3、下列的程式會輸出何1分)
$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $ num; 10
#
4、請寫出下列PHP程式碼的執行結果6分
$var1 = 5;
$var2 = 10;
functionfoo(&$my_var){
## =2; $var2 = 4;# $my_var +=3;# my_var = 5; echofoo($my_var) ."\n";//4echo $my_var."\n" ;//8
echo $var1."\n";//7
echo $var2."\n";//10
$bar = 'foo'; $my_var = 10;
echo$bar($my_var) ."\n";//4
5、寫出下列程式碼的輸出結果:
function myfunc($argument){
}
$variable =10;
echo “myfunc($variable)=”.myfunc($variable);
20myfunc(10)=
#
##6、寫出下列程式的輸出結果(5分) $test='aaaaaa'; $abc=&$test;# unset($test);## echo $abc;//
# aaaaaa
7、寫出程式運作的結果
$a=0;
# $b=0;
If($a=3||$b=3){
$a++; //true++
# $true++
# }
Echo$a.」,」.$b;
//1,1##
$a =0; $b=0; If($a=(3|$b=3)){ $a++;//3++# $b++;//3++ } Echo$a.」,」.$b;# Echo$a.」,」.$b;
# 結果:1._______1,1__________,2._________4,4_____________ 8、< ;?php $data = array('a', 'b', 'c'); foreach($data as $key=>$val) {$val
val = &$data[$key]; }#?>#1##。一次循環結束後變數$data的值是什麼?請解釋。
問題2:程式執行完後,變數$data的值是什麼?請解釋。
問答題
1、實作中文字串截取無亂碼的方法。 (3分)mb_substr()
2、輸出使用者的IP位址,並且判斷使用者的IP位址是否在192.168.1.100 --- 192.168.1.150之間(5分)。Ip2long(“192.168.1.100”) ip2long('192.168.1.150')
#3、不斷在檔案hello.txt頭部寫入一行「Hello World」字串,要求程式碼完整(10分)
$str = File_get_contents(「hello.txt ”);
$str = “helloworld”.$str;File_put_contents (“hello.txt”,$str);
#4、請列出3種PHP陣列循環運算的語法,並註明每個循環的優缺點5分For
只能循環下標連續的索引數組###################################################################### Foreach ######可以循環所有陣列##########While 與for相似
While (list($key,$val)=each($arr)) 可讀性較差,效率較低
5、求兩個日期的差數,例如2007-2-5~2007-3-6的日期差數(5分)
(Strtotime( '2007-3-6')-Strtotime(“2007-2-5”))/(3600*24)
#6、請將2維陣列依照name的長度重新排序,依照順序將id賦值(從1開始)。 (15分)
$array = array(
array('id' => 0,'name' => '123'),
array( 'id' => 0,'name' => '12345'),
array('id' => 0,'name' => '1234'),
##array('id' => 0,'name' => '123abcd'), array('id' =>. 0,'name' => '1235666); );)#for($j=0,$c=count($array);$for($j=0,$c=count($array);$ j<$c;$j++){
for($i=0;$i<$c-1-$j;$i++){
# if(strlen($array[$i]['name'])>strlen($array[namei+$array[$i]['name'])>strlen($array[namei+1][ )){
# $ array[$i]= $array[$i+1];
# }
# $array[$c-1-$j]['id']= $c-$j;
#
# ## $arr = array();foreach($Tarray as $k=>$v)
{$arr[$k] = strlen( $v['name']);}natsort($arr);$arr1 = array();$i = 0;
foreach($arr as $k =>$v){
$arr1[$i]['id'] = $v;# $arr1[$i]['name'] =$Tarray[$k][ 'name'];
$i++;
}
#
8、在PHP中error_reporting這個函數有什麼作用?(1分)
改變錯誤等級
$_SERVER['REQUEST_URI']##
10、mysql_fetch_row()和mysql_fetch_array之間有什麼差別? (1分)
Mysql_fetch_row()傳回索引數組
Mysql_fetch_array()傳回索引加上關聯的陣列
# 11、GD函式是做什麼用的?(1分)
動態的生成圖像############ ####12、請說明php中傳值與傳引用的差異。什麼時候傳值什麼時候傳引用?(2分)
傳值:只會將值傳遞給一個變數
傳送位址:會將位址傳遞給一個變量,此時兩個變數同時指向同一個位址,一個發生改變,另一個也會跟著改變。
13、談asp,php,jsp的優缺點(1分)
Asp.net優點:開發較快,B/S,C/S
Asp.net
# #缺點:平台限制(windows-IIS),成本高##PHP優點:跨平台,開發效率高,開源
PHP缺點:不能做C/S模式的軟體(例如:QQ
)JSP
優點:涉及面較廣(
C/S,B/S
),較安全性##JSP缺點:不開源,不免費,成本高
14、用PHP寫出顯示客戶端IP與伺服器IP的程式碼1分)$_SERVER['#REMOTE_ADDR']
##$_SERVER['
SERVER_ADDR'##]
15、CSS裡margin和paddin有什麼區別?寫出padding在3個參數和四個參數情況下,參數所作用的方向
Margin:1px 2px 3px
#Margin:1px 2px 3px 4px#16、開發專案中,需要上傳超過8M的文件,請說明在php.ini需要修改的設定項。 (10分)
upload_max_filesize upload_max_filesize
post_max_size # ##post_max_size # 17、Php是否有安全問題,如果有,請列出說明。
Sql
注入,預處理
# 18、從PHP4.2.0開始PHP默認配置將register_globals配置設定為off,請指出這個設定的作用和對PHP相關程式的影響。 (5分)
會自動接收參數 index.php?id=1
$id即可接收
$_SESSION['id'] = 1
19.apache預設使用進程管理還是執行緒管理?如何判斷並設定最大連線數?
程式管理
#
20、PHP如何執行shell的兩種方式
Shell_exec
##``21、寫出一個函數,參數為年份和月份,輸出結果為指定月的天數
Function getDays($year,$ month){
Return (strtotime($year.”-”.($month+1).”-1”)-strtotime($year. ”-”.$month.”-1”))/(3600*24);
######}########### # ######22、用PHP寫一段程式碼,實作不使用第3個變量,交換$a,$b的值,$a,$b的初始值自己設定。 ###### ############$a = array($a,$b)##################$b = $a[0];##################$a = $a[1]############ ####23、物件導向中介面與抽象類別的差異及應用場景
介面:是抽象類別的特殊情況,不允許有屬性,只允許有常數,所有的方法都是抽象方法
抽象類別:不一定所有的方法都是抽象方法
相同:都不能實例化
1 介面是核心,其定義了要做的事情,包含了許多的方法,但沒有定義這些方法應該如何做。
2 如果許多類別實作了某個接口,那麼每個都要用程式碼實作那些方法
3 如果某一些類別的實作有共通之處,則可以抽象化一個抽象類,讓抽象類別實現介面的公用的程式碼,而那些個人化的方法則由各個子類別去實作。
相關建議:
#以上是php基礎問答知識小結分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!