PHP基于变量的命令之间交替

Mig*_*tto 0 php

我正在尝试构建HTML而不必重复代码.基本上我可以选择打印或保存到文件; 选项将通过$_GET.

我遍历一个csv,所以HTML接收了很多变量.

我想过有一个变量$ action;

If $action == 'view' then

    echo "<h1>Hello World</h1>";

If $action == 'save' then

    file_put_contents($file,"<h1>Hello World</h1>", FILE_APPEND);
Run Code Online (Sandbox Code Playgroud)

我不喜欢不得不重复代码的想法,一个部分使用echo而另一部分file_put_contents.

我知道这是完全错误的,只是试图提出这个想法,有没有一种方式设置这样的变量?

if ($action == "view") {$start = 'echo'; $end = ';';}
elseif ($action == "save") {$start = 'file_put_contents($file,'; $end = ', FILE_APPEND);';}

$start "<h1>Hello World</h1>" $end
Run Code Online (Sandbox Code Playgroud)

Jus*_*nas 5

你的代码完全错误,语法错误.

但你可以这样做:

$str = '<h1>Hello World</h1>';

switch ($action) {
    case 'view':
        echo $str;
        break;
    case 'save':
        file_put_contents($file, $str, FILE_APPEND);
        break;
    default:
        throw new Exception('Invalid action');
}
Run Code Online (Sandbox Code Playgroud)