PHP如果变量= 1新变量=其他东西

vof42yt1  于 2023-01-08  发布在  PHP
关注(0)|答案(3)|浏览(137)

我想在PHP中做一个测试,看看如果form_id = "1",那么form_name = "Test form 1",然后如果form_id = "2",那么form_name将是"General Enquiries",例如。
这怎么可能是一个PHP。
我可以看到如何回显一个结果,但不把它变成一个新的变量。
谢谢罗伊

dhxwm5r4

dhxwm5r41#

一个简单的if语句就可以做到这一点:

if($form_id==1)
   $form_name='form 1 result';
elseif($form_id==2)
   $form_name='general inquiries';

但是当你得到更多可能的表单id时,这会产生很多嵌套语句,switch语句解决了这个问题

switch($form_id) {
    case 1:
       $form_name='form 1 name';
       break;
    case 2:
       $form_name='general enquiry';
       break;
    case 3:
       $form_name='an added form';
       break;
    default:
       $form_name='unknown form'
 }

要了解有关switch语句的详细信息,请转到here
对于条件值也有一个简短的表示法,可以把它看作是一个带有变量赋值的if语句的简短形式。

$form_name = ($form_id == 1) ? 'form 1 result' : 'enquiry';

在这种情况下,PHP首先计算问号前面的表达式。如果为真,则返回问号后面的值,否则返回冒号后面的值。

$form_name = ($form_id==1) ? ''form 1 result' : ($form_id==2) ? 'enquiry form' : 'unknown form';

编辑从一个稍微年长,稍微更有经验的我:我通常会避免嵌套这些表达式,因为这通常比使用if语句或将“内部”三元表达式放入自己的变量更难理解。

4ktjp1zp

4ktjp1zp2#

你是说像这样?

if ($form_id == 1)
{
    $form_name = "Test form 1";
}
elseif ($form_id == 2)
{
    $form_name = "General Enquiries";
}
else
{
    // do something
}
zwghvu4y

zwghvu4y3#

if ($form_id == 1){ $formname = "Test form 1";} 
if ($form_id == 2){ $formname = "General Enquiries";}

echo $formname;

相关问题