第7章PHP与Web页面交互
一、选择题
1.在PHP中,要获取通过URL传递的参数,应该使用哪个超全局变量?
A.$_GET[]
B.$_POST[]
C.$_REQUEST[]
D.$_SESSION[]
答案:A
解释:$_GET[]用于获取通过URL(查询字符串)传递的参数。
2.当提交一个HTML表单,并且该表单的method属性设置为post时,PHP中用于获取表单数据的超全局变量是?
A.$_GET[]
B.$_POST[]
C.$_REQUEST[]
D.$_COOKIE[]
答案:B
解释:$_POST[]用于获取通过HTTPPOST方法提交的表单数据。
3.在PHP中,$_GET[]和$_POST[]方法的主要区别是什么?
A.它们处理的数据类型不同
B.它们获取数据的来源不同
C.它们的安全性不同
D.它们的性能不同
答案:B
解释:$_GET和$_POST的主要区别在于它们获取数据的来源不同。$_GET从URL获取数据,而$_POST从HTTPPOST请求的主体中获取数据。
4.正则表达式中,“.”代表什么?
A.匹配任意除换行符以外的任意字符
B.匹配数字
C.匹配字母
D.匹配空白字符
答案:A
解释:在正则表达式中,.符号代表匹配任意字符(除了换行符)。
5.下列哪个函数用于在PHP中执行正则表达式匹配?
A.preg_match()
B.strpos()
C.strstr()
D.explode()
答案:A
解释:preg_match()函数用于在PHP中执行正则表达式匹配。
二、判断题
1.在PHP中,$_GET[]和$_POST[]方法都可以用于获取通过HTTPPOST方法提交的表单数据。
答案:错误
解释:$_GET用于获取通过URL传递的数据,而$_POST用于获取通过HTTPPOST方法提交的表单数据。
2.正则表达式中的*表示匹配前面的子表达式0次或多次。
答案:正确
解释:在正则表达式中,*符号确实表示匹配前面的字符或模式零次或多次。
3.GET方法比POST方法更安全,因为它不会在请求中发送数据。
答案:错误
解释:GET方法会在请求中发送数据。
三、简答题
1.描述在PHP中如何获取用户通过表单提交的数据。
答案:在PHP中,可以通过$_GET和$_POST超全局数组来获取用户通过表单提交的数据。$_GET用于获取通过URL参数传递的数据,而$_POST用于获取通过HTTPPOST方法提交的数据。可以使用$_GET[parameter_name]或$_POST[parameter_name]来访问特定的参数值。
2.解释$_GET[]和$_POST[]在PHP中的作用,并指出它们之间的主要区别。
答案:$_GET和$_POST都是PHP中的超全局数组,用于获取用户提交的数据。它们之间的主要区别在于数据的传递方式:
$_GET[]:通过URL参数传递数据,数据在URL中可见,适用于简单的数据传递,但不适合传递敏感信息。
$_POST[]:通过HTTPPOST方法提交数据,数据在URL中不可见,适用于传递大量数据或敏感信息。
3.编写一个PHP脚本,创建一个简单的HTML表单,并使用$_POS[]方法获取用户提交的数据。
答案:
!DOCTYPEhtml
html
body
formmethod=postaction=?phpecho$_SERVER[PHP_SELF];?
姓名:inputtype=textname=namebr
邮箱:inputtype=emailname=emailbr
inputtype=submitvalue=提交
/form
?php
if($_SERVER[REQUEST_METHOD]==POST){
$name=$_POST[name];
$email=$_POST[email];
echo姓名:.$name.br;
echo邮箱:.$email;
}
?
/body
/html
用户填写表单并点击提交后,PHP脚本将处理表单数据并显示姓名和邮箱。
4.简述正则表达式在PHP中的作用,并给出一个使用正则表达式匹配字符串的示例。
答案:正则表达式在PHP中用于模式匹配、查找、替换等操作。它提供了一种灵活且强大的方式来处理字符串。以下是一个使用正则表达式匹配字符串的示例:
php
?php
$string=