Когда это основано на дате, вы можете заказать коммиты с помощью git rev-list
и затем выбрать их:
git rev-list --date-order --reverse J ^A | xargs git cherry-pick
Вы можете написать простую функцию, которая применяет обратный вызов к ключам данного массива. Аналогично array_map
<?php
function array_map_keys(callable $callback, array $array) {
return array_merge([], ...array_map(
function ($key, $value) use ($callback) { return [$callback($key) => $value]; },
array_keys($array),
$array
));
}
$array = ['a' => 1, 'b' => 'test', 'c' => ['x' => 1, 'y' => 2]];
$newArray = array_map_keys(function($key) { return 'new' . ucfirst($key); }, $array);
echo json_encode($array); // {"a":1,"b":"test","c":{"x":1,"y":2}}
echo json_encode($newArray); // {"newA":1,"newB":"test","newC":{"x":1,"y":2}}
Вот суть https://gist.github.com/vardius/650367e15abfb58bcd72ca47eff096ca#file-array_map_keys-php .
. ]Эта основная функция дескрипторы, подкачивающие ключи массива и сохраняющие массив в первоначальном заказе...
public function keySwap(array $resource, array $keys)
{
$newResource = [];
foreach($resource as $k => $r){
if(array_key_exists($k,$keys)){
$newResource[$keys[$k]] = $r;
}else{
$newResource[$k] = $r;
}
}
return $newResource;
}
Вы могли тогда циклично выполниться через и подкачать все ключи с 'z', например...
$inputs = [
0 => ['a'=>'1','b'=>'2'],
1 => ['a'=>'3','b'=>'4']
]
$keySwap = ['a'=>'z'];
foreach($inputs as $k=>$i){
$inputs[$k] = $this->keySwap($i,$keySwap);
}
Простое сравнение сравнительного теста обоих решений.
Копия Решения 1 и удаляет (потерянный порядок) https://, решение 2 stackoverflow.com/a/240676/1617857
for ($i =0; $i < 100000000; $i++){
$array = ['test' => 'value'];
$array['test2'] = $array['test'];
unset($array['test']);
}
Переименовывает ключ https://Результаты stackoverflow.com/a/21299719/1617857
for ($i =0; $i < 100000000; $i++){
$array = ['test' => 'value'];
$keys = array_keys( $array );
$keys[array_search('test', $keys, true)] = 'test2';
array_combine( $keys, $array );
}
:
php solution1.php 6.33s user 0.02s system 99% cpu 6.356 total
php solution1.php 6.37s user 0.01s system 99% cpu 6.390 total
php solution2.php 12.14s user 0.01s system 99% cpu 12.164 total
php solution2.php 12.57s user 0.03s system 99% cpu 12.612 total