PHP基础笔试题

时间:2025-12-01 14:26:08 秦彰 笔试题目 我要投稿
  • 相关推荐

PHP基础笔试题

  在平时的学习、工作中,许多人都需要跟试题打交道,借助试题可以更好地考查参试者所掌握的知识和技能。什么类型的试题才能有效帮助到我们呢?下面是小编精心整理的PHP基础笔试题,欢迎阅读,希望大家能够喜欢。

PHP基础笔试题

  PHP基础笔试题 1

  1、strlen ( )与mb_strlen的作用分别是什么

  2、下列哪个函数是用正则表达式将字符串分割到数组中( )

  A、Split

  B、implode

  C、explode

  D、join

  3、写出下列程序的输出结果

  $x=87;

  $y=($x%7)*16;

  $z=$x>$y?1:0;

  echo $z;

  4、写出smarty模板的特点

  5、写出下列几个预定义全局变量的作用

  $_SERVER[DOCUMENT_ROOT]

  当前运行脚本所在的文档根目录。在服务器配置文件中定义。

  $_SERVER[HTTP_HOST ]

  当前请求的 Host: 头部的内容

  $_SERVER[REMOTE_ADDR]

  正在浏览当前页面用户的 IP 地址

  $_SERVER[HTTP_REFERER]

  链接到当前页面的'前一页面的 URL 地址

  $_SERVER[SERVER_NAME]

  当前运行脚本所在服务器主机的名称

  $_FILES

  包含有所有上传的文件信息。

  $_FILES[userfile][name]

  客户端机器文件的原名称。

  $_FILES[userfile][type]

  文件的 MIME 类型,如果浏览器提供此信息的话。一个例子是“image/gif”。不过此 MIME 类型在 PHP 端并不检查,因此不要想当然认为有这个值。

  $_FILES[userfile][size]

  已上传文件的大小,单位为字节。

  $_FILES[userfile][tmp_name]

  文件被上传后在服务端储存的临时文件名。

  $_FILES[userfile][error]

  和该文件上传相关的错误代码。

  6、include和require都能把另外一个文件包含到当前文件中,他们有什么区别?Include和include_once又有什么区别?

  7、写出一个能创建多级目录的PHP函数

  PHP基础笔试题 2

  1、用php打印出前一天的时间格式是2006-5-10 22:21:21(2分)

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

  2、echo(),print(),print_r()的区别(3分)

  echo()是一个php语句,所以没有返回值,能打印简单的数据。

  print()是一个函数,有返回值,能打印简单的'数据。

  print_r()是一个函数,能打印复杂的(mix)数据。

  如:

  wangking,qq=>123456);print_r($arr);

  运行结果:

  hello word

  the value is 1

  Array ( [name] => wangking [qq] => 123456 ) ......

  3、能够使html和php分离开使用的模板(1分)

  smarty模板

  4、使用哪些工具进行版本控制?(1分)

  TortoiseSVN

  6、如何实现字符串翻转?(3分)

  strrev("Hello world!");

  PHP基础笔试题 3

  一、单项选择题(每题 3 分,共 30 分)

  以下哪个是 PHP 正确的起始与结束标记?( )

  A.

  B. <?php 和 ?>

  C. <% 和 %>

  D. <? 和 ?>(默认开启短标签时可用,但非标准推荐)

  PHP 中,以下哪种数据类型不属于基本数据类型?( )

  A. 字符串(string)

  B. 数组(array)

  C. 布尔值(boolean)

  D. 整数(integer)

  执行echo "5" + 3;的输出结果是?( )

  A. "53"

  B. 8

  C. 53

  D. 报错

  以下哪个函数可以获取字符串的长度?( )

  A. strlen()

  B. length()

  C. str_length()

  D. count()

  关于 PHP 数组,以下说法错误的是?( )

  A. 索引数组的键名默认从 0 开始

  B. 关联数组的键名可以是字符串

  C. array_push()函数用于向数组开头添加元素

  D. count()函数可以统计数组元素个数

  以下哪个是 PHP 中的循环结构?( )

  A. for each

  B. foreach

  C. loop

  D. repeat

  函数定义时,以下哪种参数设置是正确的默认值?( )

  A. function test($a = 10, $b)

  B. function test($a, $b = "hello")

  C. function test($a = [], $b = null)

  D. function test($a = 1 + 2, $b)

  以下哪个超全局变量可以获取 URL 中 GET 参数的`值?( )

  A. $_POST

  B. $_GET

  C. $_REQUEST

  D. $_SERVER

  执行以下代码,输出结果是?( )

  $x = 5;

  function change() {

  global $x;

  $x = 10;

  }

  change();

  echo $x;

  A. 5

  B. 10

  C. 报错

  D. null

  以下哪个关键字用于定义 PHP 类?( )

  A. class

  B. struct

  C. object

  D. define

  二、填空题(每空 2 分,共 20 分)

  PHP 中,注释分为单行注释和多行注释,单行注释使用//或#,多行注释使用/* */。

  将字符串"php"转换为全大写的函数是strtoupper(),转换为全小写的函数是strtolower()。

  关联数组$user = ["name" => "小明", "age" => 12],获取 “小明” 的代码是$user["name"]。

  执行$arr = [1, 2, 3]; array_pop($arr);后,$arr的值为[1, 2](array_pop()删除数组最后一个元素)。

  PHP 中,连接两个字符串的运算符是.(点号),例如"Hello" . "World"的结果是"HelloWorld"。

  条件判断中,empty()函数用于判断变量是否为空,isset()函数用于判断变量是否已定义且非 null。

  三、简答题(每题 10 分,共 20 分)

  简述 PHP 中GET和POST两种请求方式的区别(至少 3 点)。

  答:① 数据传递方式:GET通过 URL 传递,数据可见;POST通过请求体传递,数据不可见。② 数据大小限制:GET受 URL 长度限制(通常 2KB 以内);POST无明确大小限制(取决于服务器配置)。③ 安全性:GET安全性低,不适合传递敏感数据(如密码);POST安全性较高,适合敏感数据传递。④ 缓存:GET请求可被浏览器缓存;POST请求默认不缓存。

  简述 PHP 函数中 “值传递” 和 “引用传递” 的区别,并举例说明。

  答:① 值传递:将变量的值复制一份传入函数,函数内修改不会影响原变量。例如:

  function add($num) {

  $num += 5;

  return $num;

  }

  $a = 10;

  add($a);

  echo $a; // 输出10,原变量未变

  ② 引用传递:将变量的内存地址传入函数,函数内修改会直接影响原变量,需在参数前加&。例如:

  function add(&$num) {

  $num += 5;

  return $num;

  }

  $a = 10;

  add($a);

  echo $a; // 输出15,原变量被修改

  四、编程题(每题 15 分,共 30 分)

  编写一个 PHP 函数,接收一个整数数组,返回数组中所有偶数的和。

  示例:输入[1, 2, 3, 4, 5, 6],输出12(2+4+6)。

  参考代码:

  function sumEven($arr) {

  $sum = 0;

  foreach ($arr as $num) {

  if ($num % 2 == 0) { // 判断是否为偶数

  $sum += $num;

  }

  }

  return $sum;

  }

  // 测试

  $testArr = [1, 2, 3, 4, 5, 6];

  echo sumEven($testArr); // 输出12

  编写 PHP 代码,定义一个 “学生” 类(Student),包含以下功能:

  ① 属性:姓名(name)、年龄(age)、学号(id);

  ② 构造方法:初始化姓名、年龄、学号;

  ③ 成员方法:showInfo(),输出学生的完整信息(如 “学号:2023001,姓名:小红,年龄:13”)。

  参考代码:

  class Student {

  // 定义属性

  public $name;

  public $age;

  public $id;

  // 构造方法:初始化属性

  public function __construct($id, $name, $age) {

  $this->id = $id;

  $this->name = $name;

  $this->age = $age;

  }

  // 输出学生信息

  public function showInfo() {

  echo "学号:{$this->id},姓名:{$this->name},年龄:{$this->age}";

  }

  }

  // 测试

  $student1 = new Student("2023001", "小红", 13);

  $student1->showInfo(); // 输出“学号:2023001,姓名:小红,年龄:13”

【PHP基础笔试题】相关文章:

php的基础教程08-21

 PHP的基础编程与应用10-16

几道PHP笔试题11-06

php练习笔试题09-03

php面试题?10-29

php基础知识大全10-08

PHP网站基础优化方法07-24

PHP笔试题含答案11-06

腾讯php面试题08-26