在我的日常工作中,作爲一名php開發人員,我發現自己在這裏再次處理數組&。php>數組處理:良好的面向對象的庫?
考慮:
$array1; // array to process
$keysToKeep = ['k1', 'k2', 'k3'];
$keysToTranslate = ['k1' => 'hello1'];
$keysToLower = ['k2', 'k3'];
過程的典型例子是:
$arrayProcessed = [];
foreach ($array1 as $k => $v) {
if (array_key_exists($k, $keysToKeep) {
$arrayProcessed[$k] = $v;
}
if (isset($keysToTranslate[$k])) {
$arrayProcessed[$keysToTranslate[$k]] = $v;
unset($arrayProcessed[$k]);
}
}
foreach ($keysToLower AS $k) {
if ($array_key_exists($k, $arrayProcessed)) {
$arrayProcessed[$k] = strtolower($array1[$k]);
}
}
我夢想的API,讓我來代替寫的:
$arrayProcessed = owArray::getInstance($array1)
->keepKeys($keysToKeep)
->renameKeys($keysToTranslate)
->map($keysToLower, 'strtolower')
;
任何人都可以點我到一個朝着那個方向走的圖書館?
THX提前任何提示;-)
我無法想象它會太難以製作一個功能或類爲您做到這一點 – GrumpyCrouton