-
PHP和JavaScript时区需显式统一:PHP用date_default_timezone_set('Asia/Shanghai'),JS依赖后端传ISO8601带时区时间;全链路应以UTC存储传输,仅展示层转换。
-
Laravel9升级至PHP8.0+后,PHPUnit测试因隐式内存限制覆盖(如ini_set('memory_limit',...))导致“Allowedmemorysizeexhausted”错误,即使Docker中已配置PHP_MEMORY_LIMIT=2G仍会触发默认128MB限制。
-
必须用curl_error($ch)和curl_errno($ch)获取具体错误,如“Couldnotresolvehost”;配合curl_getinfo($ch,CURLINFO_HTTP_CODE)区分网络层(0)与HTTP层(400/502)错误。
-
PHP浮点数转整型为什么经常丢精度因为PHP底层用C的double类型存浮点数,二进制无法精确表示很多十进制小数(比如0.1),转整型前哪怕只是var_dump(0.1+0.2)都可能输出0.30000000000000004。直接(int)或intval()会直接截断小数部分,不四舍五入,也不处理隐式精度误差。floor()、ceil()、round()、(int)到底怎么选关键看你要的是“截断”、“向下取整”、“向上取整”,还是“四舍五入”。它们对负数行为完全不同,且round()默认使用
-
PHP时间日期函数包括:一、time()获取当前Unix时间戳;二、date()按格式字符串格式化时间;三、getdate()返回时间关联数组;四、strtotime()解析日期字符串为时间戳;五、date_default_timezone_set()设置时区。
-
<p>PHP大数运算不能直接用+-*/,因int和float有精度上限,超限后结果失真;须用BCMath扩展的字符串函数(如bcadd、bcmul),注意scale设置、参数为字符串且扩展需启用。</p>
-
PHP变量作用域由语言硬编码决定,无法调整,只能通过global、$GLOBALS、use、$this->等显式传递值;常见错误是未声明就访问变量,导致Undefinedvariable警告。
-
需完成服务安装、PHP扩展配置及站点缓存规则设置三步:一、宝塔软件商店安装Memcached服务端;二、为PHP版本安装memcached扩展并启用;三、配置session存储路径或应用代码调用,最后通过测试文件和命令验证连接与缓存生效。
-
七牛云SDKv7+已移除Qiniu\Auth,改用Qiniu\Auth\Authorization鉴权;需动态生成uploadToken、检查返回error字段、图片处理需拼接URL参数或调用pfop。
-
VSCode无法自动对比PHP版本特性差异,仅依赖插件(如PHPIntelephense)按单版本配置做语法校验,不提供跨版本特性说明;可靠方式是结合多版本CLI、官方文档与静态扫描验证。
-
可使用array_count_values()统计值频次,或用foreach、array_reduce手动累加,亦可通过array_unique+array_filter分组重组,关联数组则按value聚合key与数量。
-
PHP中$this与::不可混用:$this仅用于实例上下文,::用于静态或父类成员访问;混用会触发Fatalerror;self::静态绑定,static::后期静态绑定,$this->动态绑定。
-
SSH断线导致宝塔安装中断的根本原因是SIGHUP信号杀死前台运行的install.sh进程;应先用screen-ls找回残留session或清理残留状态后再进screen/tmux重装。
-
PHP通过超全局数组$_GET和$_POST获取GET和POST参数,分别用于接收URL传递和请求体提交的数据,二者均为关联数组,键为参数名,值为对应值;GET参数暴露在URL中,适用于非敏感、小数据量的幂等查询操作,而POST参数位于请求体中,适合传输敏感信息、大量数据或执行非幂等操作;为确保安全,必须对用户输入进行验证、过滤和转义,使用htmlspecialchars防止XSS,采用预处理语句防御SQL注入,并通过CSRF令牌防范跨站请求伪造;参数缺失时应使用isset()、empty()或??运算符
-
RFM模型中R、F、M值需分别用SQL聚合计算:R为DATEDIFF(CURDATE(),MAX(order_time)),F为COUNT(*)WHEREstatus='paid',M为COALESCE(SUM(total_amount),0)WHEREstatus='paid';PHP中统一用int存R/F、float存M,并基于全量分布用百分位数(如20th/40th/60th/80th)进行五档打分。