嗨想知道是否有办法在没有foreach的情况下执行此操作($ array为$ k => $ v).我知道它会起作用,但如果你知道,我正在寻找一种更优雅的方式.所以我的阵列就像:
1 = 231
2 = 432
3 = 324
我翻了一下,它变成了:231 => 1, 432 =>2, 324 => 3.现在我需要做的是将所有值设置为'1'
Roc*_*mat 50
你可以使用array_fill_keys:
$array = array(
    1 => 231,
    2 => 432,
    3 => 324
);
$array = array_flip($array);
$array = array_fill_keys(array_keys($array), 1);
acm*_*cme 15
array_fill_keys()应该是你需要的:
$keys = array_keys($yourArray);
$filled = array_fill_keys($keys, 1);
我相信你正在寻找这个函数:array_fill()
从以上链接:
"使用num参数值填充一个数组,从start_index参数开始键."
虽然如果您的索引不是数字和/或不可枚举(例如,从231到324(包括231和324)),那么您可能会更好,如Rocket所说,array_fill_keys()或您的常规foreach.
| 归档时间: | 
 | 
| 查看次数: | 23591 次 | 
| 最近记录: |