类里面有display(){
this->DisplayStyles();
}
//下面是DisplayStyles()
 public function DisplayStyles()
  { 
?>   
  <style>
    h1 {
     color:white; font-size:24pt; text-align:center; 
        font-family:arial,sans-serif
    }
    .menu {
     color:white; font-size:12pt; text-align:center; 
        font-family:arial,sans-serif; font-weight:bold
    }
    td {
     background:black
    }
    p {
     color:black; font-size:12pt; text-align:justify; 
        font-family:arial,sans-serif
    }
    p.foot {
     color:white; font-size:9pt; text-align:center; 
        font-family:arial,sans-serif; font-weight:bold
    }
    a:link,a:visited,a:active {
     color:white
    }
  </style>
<?php
  }DisplayStyles()方法可以把style这些html怎么会输出给浏览器?!
我很疑惑,没有echo,php解释器怎么理解DisplayStyles()要做什么?

解决方案 »

  1.   


    <?php
    ..phpcode
    ?>
    ...html code
    <?php
    ...phpcode
    .......这里就是传说中的html代码嵌入php代码,不过你上面的那个类嵌入得还不是一般的搞笑。
      

  2.   

    ?>...<?php 和 echo "..."; 相同的意思
      

  3.   

    老兄注意那不是php了已经,而是html了,你见过html还需要用echo的吗?
      

  4.   


    小老弟,那不是简单的html 如果把this->DisplayStyles();注释掉,那些html就不会输出了。
    我还是觉得2楼说的有点道理
      

  5.   


    照您这么说,不管DisplayStyles()有没有被调用,都会把html输出来,可我发现把$this->DisplayStyles();注释掉,就没有html的输出了。用xdebug调试,进DisplayStyles()后直接把那些style忽略掉。
      

  6.   

    <?php ?>之外的内容都是直接输出的,当然是这些内容要能被解释器执行到的前提下,所以DisplayStyles()中的内容在函数被调用才会显示
      

  7.   

    看看这个。。
    http://www.laruence.com/2009/07/27/1020.html
      

  8.   

    单纯html嵌入php很好理解.我想:这样的嵌入会做到函数里面,然后函数被执行的时候再去嵌入php吧.应该只有这样解释了.
    原来认为因该是:php解释器扫描代码的时候会把嵌入的html直接打印出来.才不管什么函数.测试后才发现不是这样.
      

  9.   

    你把方法注释了当然不会执行了,当然也就不会到html那里了