array1(asd,ard,f_name,l_name)
现在我想替换
一些价值为
asd with agreement start date
带名字的f_name。
带名字的l_name。
我所做的就是这个,但是如果条件
则不会检查第二个 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';}
}
答案 0 :(得分: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 :(得分:1)
你上次陈述中有拼写错误。 '=='应该是赋值运算符'='
答案 2 :(得分: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);
这样,您可以更轻松地添加更多要替换的值。