根据给定的文件信息,以下是对PHP面试常见知识点的详细总结: ### 1. PHP中的字符串定义方法及其区别 在PHP中,字符串可以通过多种方式进行定义,主要包括以下几种: - **单引号('')**:使用单引号定义的字符串不会解析其中的变量,即变量在字符串中将被视为普通文本而不是其对应的值。此外,单引号中仅能识别转义序列`\n`和`\'`,其他转义字符将被当作普通字符处理。 - **双引号("")**:使用双引号定义的字符串能够解析其中的变量,即变量会被替换为其对应的值。双引号支持所有转义字符,例如`\n`、`\t`等。当字符串中包含变量时,推荐使用双引号。 - **Heredoc (`<<<`)**:这是一种特殊的字符串定义方式,通常用于创建多行字符串。Heredoc的语法类似于双引号,支持变量解析和所有转义字符。 - **Nowdoc (`<<<'')`**:类似于Heredoc,但不解析变量和转义字符,类似于单引号。 #### 示例代码 ```php $a = <<<EOT 这是使用Heredoc定义的字符串 EOT; $b = <<< 'EOT' 这是使用Nowdoc定义的字符串 EOT; ``` ### 2. 直接赋值与引用赋值 在PHP中,变量赋值有两种方式:直接赋值和引用赋值。 - **直接赋值**:将一个变量的值复制给另一个变量。 - **引用赋值**:使两个变量指向同一个内存地址,对其中一个变量所做的任何修改都会影响到另一个变量。 #### 示例代码 ```php $data = ['a', 'b', 'c']; foreach ($data as $key => &$val) { $val = &$data[$key]; // 引用赋值 } print_r($data); // 输出结果:['a', 'b', 'c'] ``` 在这个例子中,由于使用了引用赋值,所以在循环过程中,实际上是在修改原始数组 `$data` 中的值,因此最终 `$data` 的值保持不变。 ### 3. 预定义变量/超全局变量 PHP 提供了多个预定义的超全局变量,它们在脚本的任何地方都可用,无需预先声明即可直接使用。 - **$_GET**:接收通过URL参数传递的信息。 - **$_POST**:接收通过HTTP POST请求发送的信息。 - **$_REQUEST**:接收通过HTTP GET或POST方式传递的信息。 - **$_SESSION**:存储用户会话信息。 - **$_COOKIE**:接收客户端发送的cookie数据。 - **$_ENV**:接收环境变量。 - **$_SERVER**:包含关于服务器和执行环境的信息。 - **$GLOBALS**:包含所有全局变量。 - **$_FILES**:接收通过HTTP POST上传的文件信息。 ### 4. 运算符优先级 PHP中运算符有不同的优先级,了解这些优先级有助于编写正确的逻辑判断。 - 递增/递减 (`++`, `--`) - 逻辑非 (`!`) - 算术运算符 (`+`, `-`, `*`, `/`, `%`) - 大小比较 (`<`, `>`, `<=`, `>=`) - (不)相等比较 (`==`, `!=`, `===`, `!==`) - 引用 (`&`) - 位运算符 (`^`) - 位运算 (`|`) - 逻辑与 (`&&`) - 逻辑或 (`||`) - 三元运算符 (`? :`) - 赋值 (`=`) - `and` - `xor` - `or` ### 5. 数组循环操作 在PHP中,有多种方式可以用来循环遍历数组。 - **使用for循环**:适用于已知数组长度的情况。 - **使用foreach循环**:适用于不需要知道数组索引的情况,适用于索引数组和关联数组。 - **使用while、list()、each()组合循环**:同样适用于索引数组和关联数组,但在某些情况下可能不如foreach循环简洁。 ### 6. switch语句 switch语句的工作原理与其他循环语句略有不同,主要在于它的表达式支持的数据类型更为有限。 - **数据类型**:只能是整型、浮点型或字符串。 - **case关键字后的break**:在PHP中,switch语句的每个case之后通常需要加上`break`来终止该case并跳出switch结构,如果没有`break`,则会继续执行下一个case。但是,如果想要实现类似的效果,也可以使用`continue`来代替`break`。 ### 7. 引用与全局变量 在PHP中,可以使用引用和全局变量来进行变量的传递和访问。 - **引用**:使用`&`符号来创建变量之间的引用关系。 - **全局变量**:通过`global`关键字可以在函数内部访问外部作用域的变量。 ### 总结 以上内容涵盖了PHP面试中常见的知识点,包括字符串定义方法、变量赋值、预定义变量、运算符优先级、数组操作、switch语句以及引用和全局变量等。掌握这些基础知识不仅有助于面试,也有助于日常编程工作中解决问题。



















剩余13页未读,继续阅读


- 粉丝: 358
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源


