2013-03-05 59 views
0

所以更换PHP变量是我得到的是: 例如数组($错误):的数据与来自阵列

'F7000' => 'Undefined Fraud', 
'V5000' => 'Undefined System', 
'A0000' => 'Undefined Approved', 
'V6110' => 'Invalid ProcessRequest Number', 
.............etc lots more codes. 

我现在所做的一些代码,最后我得到的东西,如:

$message = $result->ResponseMessage = 'V6110'; 

现在,我想要做的,是显示用户比V6110 更充足的信息如何必须这样做,这样可以说,我得到这样的

$message = 'Invalid ProcessRequest Number'; 
print $message; 

这将显示用户无效的ProcessRequest数字?

感谢

回答

2

在PHP中所有的数组都是所谓的关联数组,所以你可以使用字符串作为数组 “指标”:

$error=array('F7000' => 'Undefined Fraud', 
       'V5000' => 'Undefined System', 
       'A0000' => 'Undefined Approved', 
       'V6110' => 'Invalid ProcessRequest Number', '...so on'); 

$errorNo='V6110';  
$message = $error[$errorNo]; // will return you 'Invalid ProcessRequest Number' 
if($message=='') 
    $message = "Your Default Error Message"; 
print $message; 
+0

好,并且可能添加一个IF子句,以防错误mcode不在我的数组中以显示另一个通用信息 ? – misulicus 2013-03-05 14:01:13

1
$errors = array (
    'F7000' => 'Undefined Fraud', 
    'V5000' => 'Undefined System', 
    'A0000' => 'Undefined Approved', 
    'V6110' => 'Invalid ProcessRequest Number', 
    ...); 
$message = 'V6110'; 
$message = $errors [$message]; 
echo $message; 
+1

通常不是一个好主意,用错误信息覆盖错误代码 - 你应该将消息存储在单独的var – CodeMoose 2013-03-05 14:00:46

0
// show V6110 message 
echo $errors['V6110']; 
0
$errorMsg= $errorArray[$result->ResponseMessage]; 
0

试着这么做

$message = $errors[$result->ResponseMessage];