php - echo需要在变量中传递代码

时间:2015-10-29 18:08:56

标签: php echo require

我这里有一些sudo代码

    $image_position = left

    switch($image_position){
        case 'left':
            $block_con = "require(locate_template('templates/block-media-left.php'))";
            break;
        case 'right':
            $block_con = 'require(locate_template("templates/block-media-right.php"))';
            break;
        case 'center':
            $block_con = 'require(locate_template("templates/block-media-center.php"))';
            break;  
        default:
            $block_con = 'require(locate_template("templates/block-text.php"))';

    }


    <div>

        <?php echo $block_con; ?>

    </div>

根据$ image_position的值,我想在模板文件夹中加载一个不同的php块。

交换机可以工作但是回显字符串并且不添加需求代码。

我认为不会,但不知道该怎么做。

1 个答案:

答案 0 :(得分:2)

这个怎么样?

<?php 
$image_position = 'left';
switch($image_position){
    case 'left':
        $block_con = 'templates/block-media-left.php';
        break;
    case 'right':
        $block_con = 'templates/block-media-right.php';
        break;
    case 'center':
        $block_con = 'templates/block-media-center.php';
        break;  
    default:
        $block_con = 'templates/block-text.php';
}
?>


<div>
    <?php require(locate_template($block_con)); ?>
</div>

重要的是要注意,这只是当前需要的PHP文件。这意味着它将被包含并执行。你必须在包含PHP文件的回声中获得任何输出。