php - 我如何将值存储在数组中
问题描述
这是代码工作的示例,但我想要一些不同的东西。
/** @var array */
private $LoadYear = [
'2018', '2019', '2020', '2021', '2022'
];
我想要的是我想动态存储日期,这意味着日期应该是过去两年的日期和当年的日期和明年的一个。
我是这样尝试的。但这不起作用
$Years =date(Y);
/** @var array */
private $validYears = [
$Years-3, $Years-2, $Years-1, $Years, $Years+1,
];
解决方案
从文档:
它们是通过使用关键字 public、protected 或 private 之一来定义的,可选地,从 PHP 7.4 开始,后跟一个类型声明,然后是一个普通的变量声明。这个声明可能包括一个初始化,但是这个初始化必须是一个常量值。
*我强调
这意味着,您需要从其他地方初始化属性。例如有问题的类的构造函数。例如:
class Example
{
private array $validYears;
public function __construct()
{
$Years = date('Y');
$this->validYears = [
$Years - 3, $Years - 2, $Years - 1, $Years, $Years + 1,
];
}
}
推荐阅读
- python-3.x - 根据条件更新特定的行数
- selenium - 使用 Zalenium(可扩展的硒网格)运行 dockerized Behat BDD 测试
- azure - Azure 函数 CosmosDb 绑定性能
- sql-server - 我在生成特定类型的数据时遇到问题
- sql - 比较 DB2 的 SQL 中的日期和时间
- powershell - 将 AD 信息移动到 excel 的脚本,有没有办法为描述值编写 if 函数?
- java - 读取图像时出现异常
- pdf - 使用 nltk 提取和标记单词 - 错误的输出
- unity3d - 构建完成,结果为“失败”UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
- html - 如何在输入中显示光标焦点(垂直线)