直接安装 nette/utils 即可,无需单独装 Composer;需确保 composer 命令已加入 PATH,Mac/Linux 用户添加 ~/.composer/vendor/bin 到 shell 配置,Windows 用户重装时勾选「Add to PATH」;执行 composer require nette/utils 安装,PHP ≥ 8.0,使用前需引入 autoload.php 并通过完整命名空间或 use 导入 Strings/Arrays 类。

直接装 nette/utils 就行,不需要单独装 Composer —— 它只是个 PHP 包管理器,你本地已经有就能用。
Composer 已安装但报 command not found
常见错误现象:bash: composer: command not found 或 zsh: command not found: composer
这不是没装包的问题,是 composer 命令没进系统 PATH。Mac/Linux 用户大概率是没把 ~/.composer/vendor/bin 加进 shell 配置;Windows 用户可能只装了 Composer Setup(图形安装器),但没勾选「Add to PATH」。
- Mac/Linux:运行
echo 'export PATH="$HOME/.composer/vendor/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc(用~/.bash_profile如果你用 bash) - Windows:重装 Composer,安装时务必勾选「Add to PATH」,或手动把
C:\ProgramData\ComposerSetup\bin加入系统环境变量 - 验证:终端输入
composer --version能输出版本号才算真正可用
用 composer require 安装 nette/utils
这是唯一需要的操作,nette/utils 是纯函数库,不依赖框架,装完就能直接用 Strings::replace()、Arrays::flatten() 这类工具函数。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
使用场景:想快速处理字符串正则替换、数组去重/合并/过滤,又不想写一堆 array_filter 套娃或担心 PCRE 兼容性。
- 项目根目录下执行:
composer require nette/utils - 它会自动写入
composer.json并安装到vendor/nette/utils - 确保已
require 'vendor/autoload.php'(Laravel、Symfony 等现代框架默认做了;裸 PHP 项目必须手动加) - 注意:PHP 版本需 ≥ 8.0(
nette/utilsv4+ 不再支持 PHP 7.x)
引入后怎么调用 Strings / Arrays 类
不是「引入」而是「使用」——这些是静态类,没有实例化步骤,但必须通过完整命名空间或 use 导入,否则会报 Class 'Strings' not found。
常见错误现象:写了 Strings::upper('foo') 却提示类不存在,其实是忘了命名空间。
- 推荐写法(显式 use):
use Nette\Utils\Strings; echo Strings::upper('hello'); - 也可以全名调用:
echo \Nette\Utils\Strings::upper('hello');(开头反斜杠别漏) - 别用
use Nette\Utils然后写Utils\Strings::upper()—— 这样不行,PHP 不支持嵌套命名空间简写 - 数组同理:
use Nette\Utils\Arrays;,然后Arrays::first($arr)
最易被忽略的一点:如果你在旧项目里升级过 nette/utils 到 v4,Html 和 DateTime 已拆成独立包,Strings 和 Arrays 虽还在,但部分方法签名有变(比如 Strings::split() 默认不再保留空项),不看 changelog 直接换包容易出逻辑偏差。

















