Discuz模板怎么运行PHP代码

admin 轻心小站 关注 LV.19 运营
发表于discuz程序版块 教程

在论坛制作教程中,我们讲解了怎么开发Discuz模板,在开发Discuz模板时,某些功能需要自己使用PHP进行开发。但Discuz!的模板都是htm文件,是不能直接使用PHP代码的。那么如何在Disc

在论坛制作教程中,我们讲解了怎么开发Discuz模板,在开发Discuz模板时,某些功能需要自己使用PHP进行开发。但Discuz!的模板都是htm文件,是不能直接使用PHP代码的。

那么如何在Discuz模板代码运行PHP呢?下面介绍Discuz模板代码运行PHP二种方法+外部引用方法。

方法一:使用<!--{ PHP代码 }-->

如果要在DISCUZ模板中运行PHP代码,必须放在<!--{和}-->这2组符号之间,discuz会执行其中的PHP代码。

例如:下面就是使用PHP代码进行判断并且输出值。

<!--{if $变量名=='值1'}-->
只输出这段html代码1
<!--{elseif $变量名=='值2'}-->
只输出这段html代码2
<!--{else}-->
只输出这段html代码3
<!--{/if}-->

如果要判断是否为假,则改为

<!--{if !$变量名=='值'}-->

值你可以换成变量,不过要改成双引号。同样也可用函数。当判断为假时,将不会输出那段html代码,这既能减少页面大小,又能避免越权访问(例如用<!--{if $discuz_uid}-->判断是不是游客)。

方法二:使用<!--{eval $变量名='值';}-->

<!--{eval $变量名='值';}-->

可以将变量或函数值使用PHP代码赋值给另一个变量。那个eval并不是声明,PHP的变量是无需声明的,不像JavaScript要写个var。

最后是输出。

<!--{$变量名}-->

例如生成JavaScript代码:

<!--{"<script type='text/javascript'>JavaScript代码</script>";}-->

方法三:模板直接引用PHP文件

上面二种方法是将PHP代码直接书写在DISCUZ模板里面,但是如果要书写的代码非常多的情况下,这二种方法就不适用了,就可以使用第三种方法:模板直接引用PHP文件。

先将所有的PHP代码写在一个PHP文件里,然后传到模板文件夹下,使用以下的代码引用这个PHP文件;(放在模板的顶部)

{eval include TPLDIR.'/shu.php';}

再使用<!--{echo $hyshu;}-->调用PHP文件写的变量的值就可以了。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: Discuz模板怎么运行PHP代码

粉丝

0

关注

0

收藏

0

已有0次打赏