PHP面试必备知识点:预定义变量、错误处理与数据库操作
需积分: 9 58 浏览量
更新于2024-08-01
收藏 107KB DOC 举报
"这篇资源是关于PHP面试题的个人总结,包含了多个PHP基础和进阶问题,适合准备PHP面试的人员参考。"
1. PHP中记录当前脚本名称的预定义变量是`$_SERVER['PHP_SELF']`,而链接到当前页面的URL通常存储在`$_SERVER['REQUEST_URI']`中。
2. 执行`echo 8 % (-2)`会输出`-0`,因为PHP中负数除以正数的结果会保留小数部分。
3. HTTP 1.0中的状态码401表示未经授权,需要身份验证。使用`header('HTTP/1.0 404 Not Found')`可以设置返回“找不到文件”的HTTP响应。
4. `arsort()`函数用于对关联数组进行降序排序并保持键值关联。`error_reporting(2047)`的作用是开启所有错误报告,2047是所有错误等级的二进制和。
5. PEAR中的数据库连接字符串格式通常是`DB::connect("driver://user:password@host/database")`。
6. 过滤网页上JS/VBS脚本的正则表达式可能如下:`/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/is`,这将匹配并删除所有的`<script>`标签及其内容。
7. 在Apache的httpd.conf配置文件中,通过`LoadModule php_module modules/libphp.so`动态装载PHP模块,然后使用`AddHandler application/x-httpd-php .php`使得Apache处理.php文件。
8. `include`和`require`的主要区别在于,`require`在文件不存在时会抛出致命错误,而`include`只会发出警告。避免多次包含同一文件可以使用`include_once`或`require_once`。
9. 使用`serialize()`和`unserialize()`可以将对象序列化和反序列化,从而保存到session中。
10. 要使函数参数可以作为引用传递,需要在php.ini中设置`allow_call_time_pass_reference`为`on`。
11. SQL中的LEFT JOIN用于从左表(第一个表)中返回所有记录,并与右表(第二个表)中的匹配记录组合。如果不匹配,右表字段将显示为NULL。
12. PHP中的heredoc字符串的结束标志必须以同样的缩进和不带引号的特定标识符结束,例如`<<END`开始,也需要以`END;`(不带引号且在同一行)结束。
13. 实现遍历文件夹下的所有文件和子文件夹,可以使用递归的`scandir()`函数配合`foreach`循环。
14. 论坛无限分类的实现原理通常基于自引用关联的数据库结构,每个分类都有一个父分类ID,顶级分类的父分类ID为0,通过递归查询或层级序列表存储方式实现无限级分类展示。
15. 设计该网页可以使用JavaScript配合HTML和CSS。创建一个全屏弹出窗口,窗口内有文本框和按钮。点击按钮时,使用JavaScript获取文本框的值,将其显示在主网页上,同时关闭弹出窗口。
以上就是PHP面试题的部分解答,涵盖了变量、运算符、HTTP状态码、错误报告、数据库连接、正则表达式、Apache配置、文件包含、session、函数参数、SQL查询、字符串语法等多个PHP核心概念和技术。这些知识点对于理解和提升PHP编程技能至关重要。
zr512813
- 粉丝: 0
- 资源: 2
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载