0

私は配列を持っています array1(asd,ard,f_name,l_name) 今私はいくつかの値を次のように置き換えたいと言います

契約開始日付きのasd

f_nameと名。

l_nameと名前。

私がやったことはこれですが、条件があれば2番目をチェックしていません

  for($i = 0; $i < count($changedvalue);$i++){
  //Check if the value at the 'ith' element in the array is the one you want to change
//if it is, set the ith element to some value
if ($changedvalue[$i] == 'asd')
   {$changedvalue[$i] = 'Agreement Start Date';}
   elseif ($changedvalue[$i] == 'ard')
   {$changedvalue[$i] == 'Agreement Renewal Date';}
 }
4

3 に答える 3

2

あなたはこのようにそれを行うことができます:

foreach ($changedvalue as $key => $value)
{
     switch ($value)
     {
            case('asd'):
                $changedvalue[$key]='Agreement Start Date';
                break;
            case('f_name'):
                $changedvalue[$key]='first name';
                break;
            case('l_name'):
                $changedvalue[$key]='last name';
                break;
     }
}

このようにして、配列の各行を調べ、古い値がリセット値の1つと等しい場合は、値を新しい値に設定します。

于 2012-07-24T11:27:01.150 に答える
1

最後のステートメントにタイプミスがあります。'=='は代入演算子'='である必要があります

于 2012-07-24T11:22:13.187 に答える
0

現在のコードの問題は==、最後の行がである必要があること=です。

ただし、コードを次のように変更することをお勧めします。

$valuemap = array(
   'asd' => 'Agreement Start Date',
   'f_name' => 'first name', 
    // and so on...
);

function apply_valuemap($input) {
    global $valuemap;
    return $valuemap[$input];
}

array_map('apply_valuemap', $changedvalue);

このようにすると、置き換えたい値をさらに簡単に追加できます。

于 2012-07-24T11:31:09.607 に答える