type
status
date
slug
summary
tags
category
icon
password
简单记录php学习时在菜鸟教程的检测题中遇到的问题
1.cookie只能在浏览器中有效果
2. 函数内引用全局变量问题
3.php未定义值
4.echo 不直接输出false,false显示为空(true显示为1)。有以下方法实现
1. 使用三元运算符
可以将布尔值转换为
字符串 "true"
或 "false"
:2. 使用 var_export
函数
var_export
会将布尔值显示为 true
或 false
,输出与代码风格一致:这里的第二个参数
true
会让 var_export
返回结果,而不是直接输出,这样便于与其他字符串连接。3. 使用 var_dump
函数
var_dump
会输出类型和值,对于调试非常有用:这样会输出
bool(false)
或 bool(true)
。示例输出
假设
$f = false;
:- 方法 1 输出:
f=false
- 方法 2 输出:
f=false
- 方法 3 输出:
bool(false)
5.php变量不能有-
6. 声明常量
常量不用$
7. php的自动类型转换
8.php数组指定index
1相当于被跳过了;
如果有多个指定,后续没被制定的按照前面最大的整数索引+1
tips: 进制转换问题
9. 数值字符串比较问题
10. true false null 在键值对中转换的规则和键值对同名键名覆盖逻辑
true → 1
false → 0
null → ‘’
先类型转换,后检查键名冲突,后定义的覆盖前面的
11. php中作用域的问题。
只有关键字在前才会创建新的作用域。普通的{}仅仅是一个代码块
12. php中的单引号
为什么 \n
在单引号字符串中不生效?
在 PHP 中,单引号字符串的目的是尽可能地原样输出字符串的内容。PHP 会将单引号字符串中的大多数转义字符视为字面字符(包括
\n
),这意味着 PHP 不会对它们进行特殊处理,除非是 \\
或 \'
。相比之下,双引号字符串的目的是能够处理更多的转义字符和变量插值,这使得双引号字符串更加灵活。
总结:
- 双引号字符串会解析转义字符(如
\n
、\t
等),并将其转化为实际的控制字符。
- 单引号字符串不会解析大多数转义字符,
'\n'
只是字面上的反斜杠和字母n
,不会被转化为换行符。
13. 在html-form中生成数组
14. 默认允许上传的文件大小
upload_max_filesize
是 PHP 配置文件 php.ini
中的一个指令,用于设置 PHP 上传文件的最大允许大小。它控制通过 HTTP 上传的文件的最大字节数。如果上传的文件大小超过该限制,PHP 会阻止文件上传,并触发一个错误。
15. settimelimit函数
16.trim函数
- is_a函数
18. 空格敏感
19.date函数
20.使用http 响应头 重定向
21. eregi函数(php5.3.0后已弃用
替代方法:使用 preg_match()
和 i
修饰符
由于
eregi()
已经被弃用,建议使用 preg_match()
和 i
修饰符来代替。以下是相同功能的实现方式:22. 接受任意数量参数
php允许没有形参列表的函数传参,不会报错
相当于传递的参数不会与形参匹配, PHP 不会对此进行严格的类型检查。
23.生成唯一id
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38._set定义对象设置未定义属性时的方法
📎 参考文章
- Author:Narohaz
- URL:https://narohaz.top/article/1495fe46-04d5-8082-975a-eddf20ab23a9
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!