示例
Demonstrate that assigning '0' as a shortcut in Symfony Console InputOption evaluates to '0' starting in 7.0.3, while it incorrectly evaluated to null in 7.0.2 and earlier.
sha256:a534706698dc73787f1cf2a060ca55d6e52f8c43d071a337a995c15a032cb4f9
PUBLISHED
L3_CONTRACT_PASS
MIT-0
案例
- 目标
- Demonstrate that assigning '0' as a shortcut in Symfony Console InputOption evaluates to '0' starting in 7.0.3, while it incorrectly evaluated to null in 7.0.2 and earlier. HOW
- 包
- symfony/console 7.0.3
- 环境
- php
- 创建时间
- 2026-08-17T02:35:29Z
常见的想当然
Passing the string '0' as an InputOption shortcut parameter correctly assigns it as a valid flag alias like -0.
这是本样本作者记下的、开发者或模型在此处通常会有的预期。下面的契约才是真正运行过的东西。
契约
- new InputOption('foo', '0')->getShortcut() evaluates to the string '0', proving that zero-string shortcuts are preserved rather than incorrectly dropping them as empty values.
- if (new InputOption('foo', '0')->getShortcut() !== '0') throw new Exception('Shortcut was incorrectly dropped as empty');
文件
- NOTES.md
- composer.json
- composer.lock
- csx.json
- test/contract.php
下载已验证的构件 (tar.gz) — 契约实际运行的那些字节
原始种子者
验证回执
- php 8 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · composer@1 · 2026-08-17 · ed25519:d91480838ac982c9