我已经在模版文件中输出了一段PHP代码,但是出现了这个问题,我在模版文件中这样写的:HTML code  <?php if(empty($swt_c)){ echo ""; }else{ #可按照你的要求加入正则验证该链接是否合法,然后在正确输出 echo "<script type=\"text/javascript\" src=\"{$swt_c}\"></script>"; } ?> </body>
但是输出之后却成了这样:HTML code  <script type="text/javascript" src="<?php echo http://123.xxx.com/xxx/xxx.js;?>"></script></body>
这个怎么办?

解决方案 »

  1.   

    是以:http://为开通的代码 
      

  2.   

    井号是注释开始符号。。
    <?php if(empty($swt_c)){ echo ""; }else{ #可按照你的要求加入正则验证该链接是否合法,然后在正确输出
    echo "<script type=\"text/javascript\" src=\"{$swt_c}\"></script>"; } ?> </body>
      

  3.   

    不可能,<?php ?>是后台标识符,在html中不会显示出来的。<?php
    $swt_c = "http://123.xxx.com/xxx/xxx.js";
    ?>
    <script type="text/javascript" src="<?=$swt_c?>"></script>
    #源码
    #<script type="text/javascript" src="http://123.xxx.com/xxx/xxx.js"></script>
      

  4.   


    那就是变量未定义或者为空值,加上下面这行证实一下:
    var_dump(empty($swt_c));
      

  5.   

    不知道你用的什么模板:?!!
    http://topic.csdn.net/u/20120516/11/d0cd7d52-ac6c-43bb-8fa9-c64bfb3be09a.html?1786202140
      

  6.   

    不知道你使用了什么模板引擎
    从 {$swt_c}
    变成 <?php echo http://123.xxx.com/xxx/xxx.js;?>
    来看 {$swt_c} 先被模板引擎当做模板变量处理了
    你可以写成这样
    echo "<script type=\"text/javascript\" src=\"$swt_c\"></script>";
      

  7.   

    按他的模板规则,你示例的代码是有问题的模板语法规则
    1、变量表示
    {$name} 被解析成<?php echo $name; ?>,表示显示变量$name的值,其中的“name” 变量命名必需符合PHP的命名规则,只能由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。2、常量表示
    {PHPMPS_ROOT} 被解析成<?php echo PHPMPS_ROOT; ?>,表示显示常量PHPMPS_ROOT的值,常量命名必需符合PHP的命名规则,只能由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。
    3、执行命令
    {php *} 将被解析成 <?php * ?>例 :{php $i=1 }编译成<?php $i=1;?>
    4、函数调用
    {function(*)} 将被解析成 <?php function(*)?>5、条件判断
    (1){if *} * {/if} 被解析成  <?php if(*){ ?> * <?php }?>或者                                 (2){if *} * {else} * {/if} 被解析成 <?php  if(*){  ?>  *  <?php  }  else { ?> * <?php } ?> 或者                                                   (3){if *} * {elseif} * {elseif} * {/if}被解析成 <?php if(*){ ?> * <?php }elseif(*){ ?> * <?php }elseif(*){ ?> * <?php }?>6、循环
    (1){loop $a $b} * {/loop}被解析成<? if(is_array($a)) foreach($a AS $b) { ?> * <? } ?> 或者                                                    (2){loop $a $b $c} * {/loop}则被解析成 <? if(is_array($a)) foreach($a AS $b=>$c) { ?> * <? } ?> 7、模板嵌套
    {template  filename},例如:{template  header} 表示嵌套 phpmps模块模板目录下 header.htm
      

  8.   

    是的,不过这位大哥,小弟对PHP不懂,所以能否直接给段代码
      

  9.   


    你文件是怎么命名的?不是以.htm为扩展名命名的吧?
      

  10.   

    本帖最后由 xuzuning 于 2012-05-16 15:06:10 编辑