使用<! - 时的差异?和<?php - >

时间:2013-08-05 00:22:23

标签: php

我一直想知道使用<? and <?php的区别是什么。例如,在这行代码中。

function getWallboard()
{

    $.ajax({
    type: "POST",
url: "quality_control/qc_ajax.php",
data: "action=get_queue_totals&wallboard=<? echo $_REQUEST['wallboard'];?>",
success: function(msg){
$("#queue_nav").fadeIn("fast");
        $("#queue_nav").html(msg);
    }
});        

    $.ajax({
    type: "POST",
url: "quality_control/qc_ajax.php",
data: "action=getQCWallboard&qctype=<?php echo $_REQUEST['qctype'];?>&wallboard=<? echo $_REQUEST['wallboard'];?>",
success: function(msg){
$("#wallboard").fadeIn("fast");
        $("#wallboard").html(msg);
    }
});
}

我在某些情况下遇到了错误。就像我改变<? to <?php or <?php to <?一样,我的一些代码块也不起作用。

这是我的第一篇文章。我希望我能对这个问题有所了解。

1 个答案:

答案 0 :(得分:0)

第一个(<?php)是一个安全的打开和关闭标记变体,第二个是所谓的短开标记(<?<?=)。第二个并不总是可用,如果可能的话,使用第一个选项。在PHP 5.4中,无论设置如何,<?始终可用。

<?php用于编写实际的PHP页面。但是,<? ?>通常在HTML代码中使用,以便于阅读。

修改

MyFile.php

<?php
class MyClass {
    public function MyFunction(){
        $Title = 'my title';
        $Paragraph = 'paragraph';

        include 'MyTemplate.php';
    }
}
?>

MyTemplate.php

<!DOCTYPE HTML>
<html>
    <head>
        <title>This is <? echo $Title; ?></title>
    </head>
    <body>
        <p>Hello - I am a <?= $Paragraph; ?> !</p>
    </body>
</html>

但是,您应该始终使用<?php ?>