-
若宝塔面板中内存正常但Swap使用率偏高,需通过free-h和swapon--show确认Swap占用,再用/proc/*/status解析VmSwap字段排序进程,结合ps命令查PID详情,检查是否属宝塔托管服务,并用smem工具直观分析。
-
PHP无法直接渲染RTF实现实时预览,需解析为HTML或PDF后由浏览器渲染;推荐用rtf-html-php转HTML配CSS,或调用unrtf/LibreOffice生成PDF嵌入iframe,并配合前端FileReader、AJAX与缓存提升体验。
-
可通过Nginx或Apache配置IP段黑名单:Nginx用deny指令或防火墙插件,Apache用RequireNot指令,还可通过全局blacklist.conf统一管理。
-
PHP处理JSON数据核心是json_encode()和json_decode();中文乱码需加JSON_UNESCAPED_UNICODE,解析后统一用数组避免对象访问错误,必须配合json_last_error()检查错误,BOM头和编码不一致需预处理,嵌套访问前须做存在性判断。
-
phpEnv默认不支持PostgreSQL,需手动添加php_pgsql.dll和php_pdo_pgsql.dll扩展并配置php.ini;PostgreSQL16需独立安装运行,确保libpq兼容、认证配置正确及端口开放。
-
phpenv下soap扩展需重编译启用--enable-soap;WSDL必须本地化且allow_url_fopen关闭时禁用远程加载;参数结构须严格匹配WSDL定义,调试必开trace。
-
phpenv不能管理PHP-FPM进程池,因其仅为shell层版本切换工具,仅修改PATH和环境变量,不涉及PHP-FPM守护进程、配置文件或系统服务;PHP-FPM池由独立主进程fork子进程运行,与phpenv的终端级切换完全无关。
-
唯一可靠方式是修改my.ini并重启MySQL;临时SETGLOBAL易因权限或连接复用失效,需通过SHOWVARIABLES和SHOWGLOBALSTATUS验证开启状态、路径权限及日志是否真实记录。
-
快速定位占用80/443/3306端口的进程:以管理员身份运行netstat-ano|findstr:端口号获取PID,再执行tasklist/FI"PIDeqPID号"查进程名;Apache需同步修改httpd.conf和httpd-ssl.conf中Listen及ServerName端口;MySQL改端口后PHP须用127.0.0.1+显式端口连接。
-
Apache多端口监听必须先修改httpd.conf中的Listen指令,如Listen8080;仅改VirtualHost或重定向无效,因Apache未在目标端口监听请求。
-
必须用root用户执行并加#!/bin/bash头,用绝对路径调用tar,先判断目录存在,压缩包名转义时间戳,rclone需指定--config路径,清理用ls-t+tail保留N个,日志路径、超时、输出记录不可忽略。
-
PHP8.0中箭头函数(fn)是定义而非调用语法,必须赋值给变量或作为参数传入高阶函数(如array_map)才能执行;不可裸写fn($x)=>$x*2直接运行,也不支持捕获$this,仅自动按值继承父作用域变量。
-
中国大陆手机号格式验证应使用正则/^1[3-9]\d{9}$/,需加^和$边界符,配合trim()去空格;Laravel推荐Rule::regex()配合'string'和'trim'规则;数据库层不宜用CHECK约束。
-
改了hosts仍打不开myproject.test,主因是未以管理员权限保存、DNS缓存未清、Apache未重启或域名后缀不规范;必须用127.0.0.1+.test后缀,确保hosts路径正确、格式无空格,并执行ipconfig/flushdns及重启Apache。
-
PHP静态方法和属性属于类本身,无需实例化即可通过类名直接访问,适用于工具函数、工厂方法、配置管理等无状态或全局性场景;使用self关键字指向定义时的类,static支持后期静态绑定,指向实际调用的类;常见应用包括StringHelper::capitalize()这类工具类、ProductFactory::createProduct()工厂模式、AppConfig::$databaseHost配置存储及Database::getInstance()单例模式;但过度使用会导致可测试性差、全局状态污染等问题