2017-07-20 10 views
0

配列のキーを '_1' o 'a'のような文字に変更する必要があります。例:PHP配列のキーをCharsに変更する

Array 
(
    [1] => Array 
     (
      [val1] => GFA 
     ) 
    [2] => Array 
     (
      [val1] => SDF 
     ) 
    [3] => Array 
     (
      [val1] => ASD 
     ) 
) 

と私は次のように設定する必要があります。

Array 
(
    [_1] => Array 
     (
      [val1] => GFA 
     ) 
    [_2] => Array 
     (
      [val1] => SDF 
     ) 
    [_3] => Array 
     (
      [val1] => ASD 
     ) 
) 

は簡単にそれをする方法はありますか?

答えて

4

あなたの配列のすべての要素に沿ったループはどうですか?新しい要素を追加し、その時点で現在の要素を削除します。

foreachは、このループの開始時に存在する配列要素のみを考慮する必要があります。あなたはワンライナーは、あなたが行うことができますしたい場合は、このループに追加された要素は、ループ

1

の数に影響を与えないでください。

$array = array_combine(array_map(function ($v) { return "_".$v; }, array_keys($array)),array_values($array)); 
-1

あなたはこのようにそれを得ることができます印刷

$array = array(); 
foreach($yourArray as $key => $val) 
{ 
    $array["_".$key] = $val; 
} 

、あなた配列は$arrayとなり、出力が得られます。

0

あなたの問題について、私のapprochは次のようになります - >

function ChangeArrayKey($arr = array()){ 
    $ret = array(); 
    foreach($arr as $key => $value) { 
     $ret['_'.$key] = $value; 
    } 

    return $ret; 
} 

// this is how you will use this function 
ChangeArrayKey($arr); 
関連する問題