2018.7.19 . php复习

PHP程序设计

1.请写出HTML标记meta的完整英文单词:metadata

2.至关于http文件头做用(向浏览器传回正确和精确地显示网页内容的消息)的meta标记的属性是http-equiv

3.PHP的全称是:PHP:Hypertext Preprocessor

4.PHP的两种运行方式是 CGI 和 mod_php

5.以 mod_php模式运行PHP,为何每次修改php.ini的配置信息都须要重启apache,配置才生效?

以 mod_php模式运行php,意味着php做为apache的一个模块来启动的。所以只有在apache启动的时候会读取php.ini配置文件并加载扩展模块,在apache运行期间是不会再去读取和加载扩展模块的。

6. PHP中echo功能是 什么?

将PHP后台运行获得饿数据输出到浏览器页面中

7.输出的不一样

$"加油";则(1)echo '中国$str!';  输出中国$str!  
        (2)echo "中国$str!" ;输出   中国加油!

8.其余类型的变量转化为布尔类型时,哪些值被认为是false?

布尔值false,整形值0,浮点值0.0,空白字符串,字符串'0',空数组,特殊数据类型NULL,没有设定的变量。

9.在浏览器中运行如下PHP代码,在三个文本框中依次分别输入一、二、3,则浏览器页面输出 sparkqty321

10.和C不一样,PHP函数内访问函数外申明的全局变量,必须在函数开始处用 golbal 申明

11.PHP中经常使用的几个预约变量(魔术变量)是那些?

$_post  $_get   $_request   $_session  $_cookie  $_files  $_SERVER  $GLOBALS

12. PHP中经常使用的几个预约义常量(魔术变量)是那些?

_line_  _file_  _dir_  _function_    _class_  _traint_  _method_  _namespace_

13.数组的概念是什么?数据根据索引分为那两种,如何区分?数组的声明方式主要有那两种?

数组是一个能够存储一组或一系列数值的变量(复合型变量);索引数组(索引值为数字,以0开始)和关联数组(以字符串做为索引值);(3)数组的声明方式主要用两种:A 经过array() 函数声明数组,能够经过key=>value 的方式分别定义索引和值,也能够不定义数组的索引下标,只给出数组的元素值。B直接为元素赋值,不须要调用array()  函数。例如:$arr[0]=1,$arr[1]=2;

14.数组合并函数array_merge() 和数组加法运算$arr1+$arr2 的区别是什么

 
  1. 数组合并函数array_merge( )和数组加法运算$arr1 + $arr2 的区别是什么?
    使用array_merge( ),若是是关联数组合并,若是数组的键名相同,那么后面的值将覆盖前者;若是是数字索引数组合并,则不覆盖,而是后者附加到前者后面。使用数组加法运算,与 array_merge( )不一样,加法运算不论是关联数组仍是数字索引数组,都是将相同键名的值舍弃,也就是只保留首次出现该键名的元素,后来的具备相同键名的元素都不会被加进来。
  2. 简述array compact(mixed $varname [, mixed ...])函数的功能。
    把一个或多个变量,创建成数组元素,这些数组元素的键名就是变量的变量名,值是变量的值。
  3. 简述PHP数组转换为字符串、字符串转换为数组的方法。
    explode ( string $separator , string $string [, int $limit ] ) 使用一个分隔字符来分隔一个字符串。
      implode ( string $glue , array $arr ) 使用一个链接符将数组中的每一个单元链接为一个字符串。php

  4. 如下留言功能的代码存在页面被篡改(XSS攻击)的漏洞,请用简单过滤的方法写出防止页面被篡改的完整代码。

    您的Email地址:


    您的留言:




    <?php
    $Email=$_POST['Email'];
    $note=$_POST['note'];
    echo "用户".$Email."您好! ";
    echo "
    您的留言是:
        ".$note."
    ";
    ?>
  5. 验证身份证号码规则的正则表达式是: #^[0-9]{17}([0-9]|X|Y)$# 。
  6. 简述PHP函数file_get_contents( )的功能。
    与依次调用fopen( )、fwrite( )及fclose( )函数的功能同样,默认是直接覆盖原有文件的内容。
  7. 要使HTML表单生成文件上传变量必须知足哪3个条件?

(1) 必须使用POST方式提交(设置表单 method="post" );(2) 必须设置表单enctype属性为 enctype="multipart/form-data" ;(3) 表单中要有一个文本域控件。html

  1. 由HTML表单生成文件上传变量,PHP以数组的形式记录了上传文件的详细信息,这个预约义变量(全局数组)是___$_FILES['上传控件的name'][ 'name'|'type'|'tmp_name'|'size'|'error'] 。
  2. Cookie运行在客户端,Session运行在服务器端,对吗?
    不彻底正确。Cookie是运行在客户端,由客户端进行管理;Session虽然是运行在服务器端,可是sessionID做为一个Cookie是存储在客户端的。
  3. Session 比Cookie更安全吗?不该该大量使用Cookie吗?
    错误。Cookie确实可能存在一些不安全的因素,但和JavaScript同样,即便突破前端验证,还有后端保证安全。因此,一切都要看设计。若是说不安全,也是因为代码不安全,错误地把身份验证的Cookie做为权限验证来使用。
  4. 若是把别人的机器上的Cookie复制到个人电脑上(假设使用相同的浏览器),是否是可以登陆别人的帐号?
    是的。这属于Cookie劫持的一种作法。
  5. 在URL中用get传值的时候,若中文出现乱码,应该用哪一个函数对中文进行编码?
    使用urlencode()对中文进行编码,使用urldecode()来解码。
  6. PHP中访问类中静态成员或函数应经过 类名:: 或self::进行访问。
  7. 继承是代码复用的一种重要机制,但继承破坏了封装性,不恰当的继承还可能违反现实世界的逻辑。PHP采用了一种更新进的代码复用机制,它用一致的方式来组合对象,增长了水平特性,这种机制就是PHP的 Traits机制 。
  8. PHP目前不支持方法重载,但能够用魔术方法 __ _call 来实现相似于方法重载的功能。
  9. 有关系模式:cjb(学号, 课程号, 成绩),把SQL语言:select * from cjb a where 成绩<(select avg(成绩) from cjb b where b.课程号= a.课程号),翻译成中文 查询考试成绩比该课程平均成绩低的学生的学号、课程号、成绩。 。
  10. 说说mysql_fetch_row( ) 和mysql_fetch_assoc( )和mysql_fetch_array( )之间有什么区别?
    第一个是返回结果集中的一行做为索引数组(键名是数字的数组称之为索引数组),第二个是返回关联数组(至少有一个键名是字符串的数组称之为索引数组),而第三个既能够返回索引数组也能够返回关联数组,取决于它的第二个参是MYSQL_BOTH或MYSQL_NUM或MYSQL_ASSOC 默认为MYSQL_BOTH。
  11. exec ( )方法是 PDO 类的方法,execute ( )方法是 PDOStatement 类的方法。
  12. 简述什么是事务处理以及PHP中PDO事务处理的实现过程。
    事务处理:经过将一组相关操做组合为一个要么所有成功要么所有失败的单元,能够简化错误恢复并使应用程序更加可靠。PDO事务处理的实现过程:首先定义数据库链接的参数,建立try{ }catch{ }语句,在try{ }语句中实例化PDO构造函数,完成与数据库的链接,而且经过beginTransaction( )方法开启事务;而后写事务处理业务逻辑代码,经过commit( )方法完成事务的提交操做;最后在catch{ }语句中返回错误信息,而且经过rollback( )执行事务的回滚操做。
  13. 什么是Ajax?Ajax的原理是什么?Ajax的核心技术是什么?Ajax的优缺点是什么? Ajax是Asynchronous JavaScript and XML的缩写,是JavaScript、XML、CSS、DOM等多个技术的组合。Ajax的工做原理是一个页面的指定位置能够加载另外一个页面全部的输出内容,这样就实现了一个静态页面也能获取到数据库中的返回数据信息了。因此Ajax技术实现了一个静态网页在不刷新整个页面的状况下与服务器通讯,减小了用户等待时间,同时也从而下降了网络流量,加强了客户体验的友好程度。 Ajax的核心技术是XMLHttpRequest,它是JavaScript中的一个对象。Ajax的优势是:(1)减轻了服务器端负担,将一部分之前由服务器负担的工做转移到客户端执行,利用客户端闲置的资源进行处理;(2)在只局部刷新的状况下更新页面,增长了页面反应速度,使用户体验更友好。Ajax的缺点是不利于SEO推广优化,由于搜索引擎没法直接访问到Ajax请求的内容。
相关文章
相关标签/搜索