个性化阅读
专注于IT技术分析

史上最全!PHP面试题和知识点汇总

PHP面试问题

许多公司都提供了PHP面试问题和答案。让我们看一下最重要的PHP面试问题列表。

1)什么是PHP?

PHP代表超文本预处理器。它是一种开放源代码的服务器端脚本语言, 广泛用于Web开发。它支持许多数据库, 如MySQL, Oracle, Sybase, Solid, PostgreSQL, 通用ODBC等。

更多细节…


2)PHP中的PEAR是什么?

PEAR是可重用的PHP组件的框架和存储库。 PEAR代表PHP扩展和应用程序存储库。它包含所有类型的PHP代码段和库。

它还提供了一个命令行界面来自动安装”软件包”。


3)谁被称为PHP之父?

拉斯穆斯·勒多夫(Rasmus Lerdorf)


4)PHP的旧名称是什么?

PHP的旧名称是Personal Home Page。


5)解释黑白静态和动态网站的区别?

在静态网站中, 运行脚本后无法更改内容。你无法在网站上进行任何更改。它是预定义的。

在动态网站中, 脚本的内容可以在运行时更改。每次用户访问或重新加载时, 都会重新生成其内容。谷歌, 雅虎和每个搜索引擎都是动态网站的例子。


6)PHP中脚本引擎的名称是什么?

支持PHP的脚本引擎称为Zend Engine 2。


7)解释PHP4和PHP5之间的区别。

PHP4不支持oops概念, 而是使用Zend Engine 1。

PHP5支持oops概念并使用Zend Engine 2。


8)PHP中流行的内容管理系统(CMS)是什么?

  • WordPress:WordPress是基于PHP和MySQL的免费开放源内容管理系统(CMS)。它包括一个插件体系结构和模板系统。它主要与博客联系在一起, 但支持另一种Web内容, 其中包含更多传统的邮件列表和论坛, 媒体展示和在线商店。
  • Joomla:Joomla是由Open Source Matters, Inc创建的用于分发Web内容的免费开放源内容管理系统(CMS)。它基于可独立于CMS使用的模型-视图-控制器Web应用程序框架。 。
  • Magento:Magento是Varien Inc.开发的一种开源电子贸易程序, 对在线业务非常有价值。它具有灵活的测量设计, 功能多样, 具有许多对客户有用的控制选择。 Magento利用E-trade阶段为组织提供了极端的电子商务安排和广泛的支持网络。
  • Drupal:Drupal是一个用PHP开发并以GNU(通用公共许可证)发行的CMS平台。

9)PHP中流行的框架是什么?

  • CakePHP
  • 这是2
  • Symfony
  • Zend Framework等

10)PHP与哪种编程语言相似?

PHP已从Perl和C借用了其语法。


11)列出PHP7的一些功能。

  • 标量类型声明
  • 返回类型声明
  • 空合并运算符(??)
  • 飞船操作员
  • 使用define()的常量数组
  • 匿名班
  • Closure :: call方法
  • 团体使用声明
  • 生成器返回表达式
  • 发电机委托
  • 太空船操作员

12)PHP中的” echo”是什么?

PHP echo输出一个或多个字符串。它是语言构造而不是功能。因此, 不需要使用括号。但是, 如果要传递多个参数以进行回显, 则需要使用括号。

语法

void echo ( string $arg1 [, string $... ] )

更多细节…


13)什么是PHP中的”打印”?

PHP打印输出一个字符串。它是语言构造而不是功能。因此, 参数列表不需要使用括号。与echo不同, 它总是返回1。

语法

int print ( string $arg)

更多细节…


14)PHP中的” echo”和” print”有什么区别?

Echo可以输出一个或多个字符串, 但是print只能输出一个字符串, 并且始终返回1。

回声比打印更快, 因为它不返回任何值。


15)如何在PHP中声明变量?

PHP变量是保存数据的内存位置的名称。它是临时存储。

语法

$variableName=value;

更多细节…


16)$ message和$$ message之间有什么区别?

$ message存储变量数据, 而$$ message用于存储变量变量。

$ message存储固定数据, 而$$ message中存储的数据可以动态更改。

更多细节…


17)在PHP中定义常量的方式有哪些?

PHP常量是在脚本执行期间不能更改的名称或标识符。 PHP常量有两种定义方式:

  • 使用define()函数
  • 使用const()函数

更多细节…


18)PHP中的魔术常数是什么?

PHP魔术常量是预定义的常量, 它们会根据使用情况而变化。它们以双下划线(__)开头, 并以双下划线(__)结尾。

更多细节…


19)PHP中有几种数据类型?

PHP数据类型用于保存不同类型的数据或值。有8种原始数据类型, 进一步分为3种类型:

  • 标量类型
  • 复合类型
  • 特殊类型

更多细节…


20)如何在PHP中做单行和多行注释?

PHP单行注释有两种方式:

  • 使用//(C ++样式单行注释)
  • 使用#(Unix Shell样式单行注释)

PHP多行注释是通过将其中的所有行都包含在内来进行的。

更多细节…


21)PHP中有哪些不同的循环?

对于, 一会儿, 每当做一会儿。


22)PHP中count()函数的用途是什么?

PHP count()函数用于对数组或某个对象中的元素总数进行计数。


23)PHP中header()函数的用途是什么?

header()函数用于将原始HTTP标头发送到客户端。在发送实际输出之前, 必须先调用它。例如, 在使用此功能之前, 你无法打印任何HTML元素。


24)isset()有什么作用?

isset()函数检查变量是否已定义并且不为null。


25)解释PHP参数化函数。

PHP参数化函数是带有参数的函数。你可以在函数内传递任意数量的参数。这些给定的参数充当函数内部的变量。它们在函数名称后的括号内指定。输出取决于作为参数传递给函数的动态值。

更多细节…


26)解释PHP可变长度参数函数

PHP支持可变长度参数函数。这意味着你可以在函数中传递0、1或n个参数。为此, 你需要在参数名称之前使用3个椭圆(点)。自PHP 5.6起, 为可变长参数实现了3点概念。

更多细节…


27)解释PHP可变长度参数函数。

PHP支持可变长度参数函数。这意味着你可以传递0、1或n个参数。


28)PHP中的数组是什么?

数组用于将多个值存储在一个值中。在PHP中, 它对键和值对的映射进行排序。它保存数据类型的集合。

更多细节…


29)PHP中有几种类型的数组?

PHP中存在三种类型的数组:

  1. 索引数组:具有数字键的数组。
  2. 关联数组:每个键都有其特定值的数组。
  3. 多维数组:在其内部包含一个或多个数组的数组。

30)解释一些PHP数组函数吗?

PHP中有许多数组函数:

  • array()
  • array_change_key_case()
  • array_chunk()
  • 计数()
  • 分类()
  • array_reverse()
  • array_search()
  • array_intersect()

更多细节…


31)索引数组和关联数组有什么区别?

索引数组包含索引形式的元素, 该索引形式由从0到1的数字表示。例如:

$season=array("summer", "winter", "spring", "autumn");

关联数组包含具有名称的元素。例如:

$salary=array("Sonoo"=>"350000", "John"=>"450000", "Kartik"=>"200000");

更多细节…


32)如何获取字符串的长度?

strlen()函数用于获取字符串的长度。

更多细节…


33)解释一些PHP字符串函数吗?

PHP中有许多数组函数:

  • strtolower()
  • strtoupper()
  • ucfirst()
  • lcfirst()
  • ucwords()
  • strrev()
  • strlen()

更多细节…


34)用PHP提交表单的方法有哪些?

有两种方法GET和POST。

更多细节…


35)如何在没有提交按钮的情况下提交表单?

你可以使用JavaScript Submit()函数提交表单, 而无需显式单击任何提交按钮。


36)在PHP中包括文件的方法是什么?

PHP允许你包含文件, 以便页面内容可以再次重用。有两种方法可以在PHP中添加文件。

  1. 包括
  2. 要求

更多细节…


37)区分需求和包含?

Require和include都用于包含文件, 但是如果找不到数据, 则include发送警告, 而require发送致命错误。

更多细节…


38)在PHP中解释setcookie()函数?

PHP setcookie()函数用于通过HTTP响应设置cookie。设置cookie后, 可以通过$ _COOKIE超全局变量访问它。

语法

bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path   
[, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

更多细节…


39)如何获取Cookie值?

echo $_COOKIE ["user"];

更多细节…


40)什么是会议?

PHP Engine创建一个逻辑对象来保存后续HTTP请求(称为会话)中的数据。

会话通常存储临时数据, 以允许多个PHP页面为同一用户提供完整的功能事务。

简而言之, 它维护用户(浏览器)的数据。

更多细节…


41)将变量注册到会话中的方法是什么?

<?php
Session_register($ur_session_var);
?>

42)PHP中的$ _SESSION是什么?

会话在服务器上的临时目录中创建一个文件, 该目录中存储了已注册的会话变量及其会话ID。在访问期间, 该数据将可用于网站上的所有页面。

临时记录的区域由php.ini文档中称为session.save_path的设置控制。

在会话开始时, 发生了以下事情-

  1. PHP首先为该客户端的特定会话创建一个会话ID的两个副本, 该会话ID是32个十六进制数字的任意字符串, 例如3c7foj34c3jjhkyepop2fc937e3443。
  2. 唯一会话ID的一份副本会自动发送给用户的计算机, 以备将来进行同步之用, 并且在服务器端维护一份副本, 直到会话运行为止。
  3. 每当你要访问网站或Web应用程序的页面时, 当前用户的会话ID都将与HTTP标头相关联, 并将其与服务器上维护的会话ID进行比较。完成比较过程后, 你可以轻松访问网站或Web应用程序的页面
  4. 会话在用户关闭浏览器时结束, 或者在离开站点后, 服务器将在预定时间(通常为30分钟)后终止会话。

43)什么是PHP session_start()和session_destroy()函数?

PHP session_start()函数用于启动会话。它从新开始或恢复当前会话。如果会话已经创建, 它将返回当前会话。如果会话不可用, 它将创建并返回新的会话。

更多细节…


44)会话和cookie有什么区别?

会话和cookie之间的主要区别在于, cookie以文本文件格式存储在用户计算机上, 而会话则存储在服务器端。

Cookies不能容纳多个变量, 另一方面, Session可以容纳多个变量。

你可以手动设置Cookie的有效期, 而会话仅在打开浏览器时保持活动状态。


45)编写语法以在PHP中打开文件吗?

PHP fopen()函数用于打开文件或URL并返回资源。它接受两个参数:$ filename和$ mode。

语法

resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] )

更多细节…


46)如何在PHP中读取文件?

PHP提供了各种功能来从文件读取数据。不同的功能允许你读取所有文件数据, 逐行读取数据以及逐字符读取数据。

PHP文件读取功能如下:

  • fread()
  • fgets()
  • fgetc()

更多细节…


47)如何用PHP写文件?

PHP fwrite()和fputs()函数用于将数据写入文件。要将数据写入文件, 你需要使用w, r +, w +, x, x +, c或c +模式。

更多细节…


48)如何在PHP中删除文件?

unlink()函数用于删除PHP中的文件。

bool unlink (string $filename)

更多细节…


49)从命令行执行PHP脚本的方法是什么?

你应该只运行PHP命令行界面(CLI)并指定要执行的脚本的文件名, 如下所示。


50)如何用PHP上传文件?

move_uploaded_file()函数用于在PHP中上传文件。

bool move_uploaded_file ( string $filename , string $destination )

更多细节…


51)如何用PHP下载文件?

readfile()函数用于下载PHP中的文件。

int readfile ( string $filename )

更多细节…


52)如何使用PHP发送电子邮件?

mail()函数用于通过PHP发送电子邮件。

bool mail($to, $subject, $message, $header);

更多细节…


53)如何将MySQL数据库与PHP连接?

有两种方法可以将MySQL数据库与PHP连接。程序和面向对象的样式。

更多细节…


54)如何在PHP中创建连接?

mysqli_connect()函数用于在PHP中创建连接。

resource mysqli_connect (server, username, password)

更多细节…


55)如何在PHP中创建数据库连接和查询?

从PHP 4.3开始, 不推荐使用mysql_reate_db()。现在, 你可以使用以下2个替代方法。

  • mysqli_query()
  • PDO :: _ query()

更多细节…


56)如何增加PHP脚本的执行时间?

默认情况下, PHP脚本的最大执行时间设置为30秒。如果脚本花费的时间超过30秒, PHP将停止脚本并返回错误。

你可以通过更改php.ini文件中的max_execution_time指令来更改脚本运行时间。

调用脚本时, set_time_limit函数将从零重新启动超时计数器。这意味着, 如果将默认计时器设置为30秒, 并且在函数set_time_limit()中指定了20秒, 则脚本将运行45秒。如果在此函数中指定了0sec, 脚本将花费无限的时间。


57)PHP中有哪些不同类型的错误?

PHP中存在3种错误。

  1. 注意:这些是非严重错误。这些错误不会显示给用户。
  2. 警告:这些是更严重的错误, 但不会导致脚本终止。默认情况下, 这些错误会显示给用户。
  3. 致命错误:这些是最严重的错误。这些错误可能是由于脚本的立即终止引起的。

58)如何停止执行PHP脚本?

exit()函数用于停止PHP脚本的执行。


59)PHP中的加密功能是什么?

CRYPT()和MD5()


60)PHP中的htaccess是什么?

.htaccess是Apache服务器上的配置文件。你可以使用Apache配置文件(如.htaccess和httpd.conf)中的指令来更改配置设置。


61)解释PHP explode()函数。

PHP explode()函数将字符串分成数组。


62)解释PHP split()函数。

PHP split()函数通过正则表达式将字符串拆分为数组。


63)我们如何在PHP中获取客户端的IP地址?

$_SERVER["REMOTE_ADDR"];

64)持久性Cookie的含义是什么?

永久性cookie永久存储在浏览器计算机上的cookie文件中。默认情况下, cookies是临时的, 如果我们关闭浏览器, cookies将被删除。


65)函数” imagetypes()”的用途是什么?

imagetypes()给出当前版本的GD-PHP支持的图像格式和类型。


66)什么是include()和require()函数?

Include()函数用于将一个PHP文件的数据放入另一个PHP文件。如果发生错误, 那么include()函数会产生警告, 但不会停止脚本的执行, 它将继续执行。

Require()函数还用于将一个PHP文件的数据放入另一个PHP文件。如果有任何错误, 那么require()函数将产生警告和致命错误并停止脚本。


67)什么是饼干?如何在PHP中创建cookie?

Cookie用于标识用户。 Cookie是服务器在客户端计算机上安装的一点记录。相似的PC每次请求提供程序页面时, 也会发送cookie。使用PHP, 你可以创建和恢复cookie值。

关于Cookies的一些重要事项:

  1. Cookie会以加密形式验证用户身份后, 维护在后端生成的会话ID, 并且该cookie必须驻留在计算机的浏览器中
  2. 你只能存储不是对象的字符串值, 因为你不能在网站或Web应用程序中访问任何对象
  3. 范围:-多页。
  4. 默认情况下, Cookie是临时的, 而临时性Cookie仅保存在浏览器中。
  5. 默认情况下, Cookie是特定于URL的, 这意味着Yahoo不支持Gmail, 反之亦然。
  6. 每个站点可以在一个网站或Web应用程序中创建20个Cookie
  7. Cookie的初始大小为50个字节。
  8. Cookie的最大大小为4096个字节。

68)PHP中解析器的重要性是什么?

PHP解析器从开始标记到结束标记解析PHP开发的网站。标签指示从哪里开始和结束PHP代码。换句话说, 打开和关闭标签决定了PHP中关闭标签的PHP脚本语法的范围

<?php中打开标签的语法

?> PHP中关闭标签的语法


69)我们如何使用PHP和MySQL创建数据库?

使用PHP创建MySQL数据库的必要步骤是:

  • 从你的PHP脚本建立与MySQL服务器的连接。
  • 如果连接成功, 请编写SQL查询以创建数据库并将其存储在字符串变量中。
  • 执行查询。

Java OOP面试问题
Java字符串和异常问题
JDBC面试问题
JSP面试问题
休眠面试问题
SQL面试题
Android面试题
MySQL面试问题

Java基础面试问题

Java多线程问题

Java Collection面试题

Servlet面试问题

春季面试问题

PL / SQL面试问题

Oracle面试问题

SQL Server面试问题

赞(0) 打赏
未经允许不得转载:srcmini » 史上最全!PHP面试题和知识点汇总
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏