可以仅使用键初始化 PHP 数组吗?
possible to initialize a PHP array with keys only?
我只是在寻找更多 eloquent 方法来为邮件表单定义空错误字符串数组然后这个...
$err = array('NAME'=>'', 'EMAIL'=>'', 'ADDR'=>'', 'CS_LOC'=>'', 'ZIP'=>'','PHONE'=>'', 'COMMENTS'=>'', 'FILE'=> '');
因为无论如何我不得不偶尔刷新这些,当然在表单发布的任何时候,我已经设置了一个像下面这样的函数,我会根据需要调用它,就像这样。
function clearFormErrors(&$ary) { // fill error array with empty strings
$keys = array_keys($ary);
$filled = array_fill_keys($keys, '');
}
没什么大不了的[编辑]:,但是因为无论如何我都要调用它,所以如果有一些很好的'wishlist'方式我可以定义数组 **KEYS 当我声明它时**,像这样...
$err = array('NAME', 'EMAIL, 'ADDR', 'CS_LOC, 'ZIP,'PHONE', 'COMMENTS, 'FILE');
当然以上没有达到预期的效果。 我很好奇 PHP 文档中是否遗漏了一些简单的指令或方法,这些指令或方法只会让我定义键(有或没有一些默认类型).我确信可以创建一个更复杂的函数来使用我上面 'wishlist' 数组中的键(现在是值)构建一个新数组,但听起来它不会使代码更短或更多'eloquent',对吧?
如果你有键数组,array_fill_keys is the most elegant way to "reset" the array. The other way that makes sense is array_map,但对于你的简单任务来说,这似乎有点开销。
我只是在寻找更多 eloquent 方法来为邮件表单定义空错误字符串数组然后这个...
$err = array('NAME'=>'', 'EMAIL'=>'', 'ADDR'=>'', 'CS_LOC'=>'', 'ZIP'=>'','PHONE'=>'', 'COMMENTS'=>'', 'FILE'=> '');
因为无论如何我不得不偶尔刷新这些,当然在表单发布的任何时候,我已经设置了一个像下面这样的函数,我会根据需要调用它,就像这样。
function clearFormErrors(&$ary) { // fill error array with empty strings
$keys = array_keys($ary);
$filled = array_fill_keys($keys, '');
}
没什么大不了的[编辑]:,但是因为无论如何我都要调用它,所以如果有一些很好的'wishlist'方式我可以定义数组 **KEYS 当我声明它时**,像这样...
$err = array('NAME', 'EMAIL, 'ADDR', 'CS_LOC, 'ZIP,'PHONE', 'COMMENTS, 'FILE');
当然以上没有达到预期的效果。 我很好奇 PHP 文档中是否遗漏了一些简单的指令或方法,这些指令或方法只会让我定义键(有或没有一些默认类型).我确信可以创建一个更复杂的函数来使用我上面 'wishlist' 数组中的键(现在是值)构建一个新数组,但听起来它不会使代码更短或更多'eloquent',对吧?
如果你有键数组,array_fill_keys is the most elegant way to "reset" the array. The other way that makes sense is array_map,但对于你的简单任务来说,这似乎有点开销。