标签: smarty

如何在PHP中调试变量如PHP中的var_dump()

我在模板中有一些变量,我不知道我在哪里分配它们.我需要知道特定变量中的内容; 例如,假设我在smarty中有一个变量叫member.我试过{debug}但它没有用,也没有显示弹出窗口.

如何使用var_dump()模板内部的东西输出/调试智能变量?

php debugging templates smarty

157
推荐指数
6
解决办法
22万
查看次数

什么是.tpl文件?PHP,网页设计

一个男人想让我重新设计一个用PHP运行的网站(VideoCMS).但当我让他给我发送源时,他给了我*.tpl文件而不是*.php.里面有一些代码:

{include file='header.tpl' p="article"} 

<br />
<table width="886" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="150" valign="top">
    <div id="reg_box">
    <h3 class="captions">{$lang.articles}</h3>
        <div id="list_cats">
        <ul>
            {$article_categories}
        </ul>
        </div>
    </div>
    <br />
    <div id="reg_box">
    <h3 class="captions">{$lang.members}</h3>
    {if $logged_in == '1'}
    {include file='loggedin_body.tpl'} 
    {else}
    {include file='login_body.tpl'} 
    {/if}
Run Code Online (Sandbox Code Playgroud)

要么

{include file='header.tpl' p="index"} 

{php} $_SESSION['isFair'] = "Yes"; {/php}
Run Code Online (Sandbox Code Playgroud)

问题:代码的解释器是什么?如何重新设计这个网站?

html php smarty

88
推荐指数
5
解决办法
25万
查看次数

我为什么要在PHP中使用模板系统?

我为什么要在PHP中使用模板系统?

我的问题背后的原因是:PHP本身是功能丰富的模板系统,我为什么要安装另一个模板引擎?

到目前为止我找到的唯一两个职业选手是:

  1. 更清晰的语法(有时)
  2. 模板引擎通常不够强大,无法实现业务逻辑,因此它会强制您分离关注点.使用PHP进行模板化可以引诱您绕过模板原理并再次开始编写代码汤.

......与利弊相比,两者都可以忽略不计.

小例子:

PHP

<h1><?=$title?></h1>
<ul>
  <? foreach ($items as $item) {?>
  <li><?=$item?></li>
  <? } ?>
</ul>
Run Code Online (Sandbox Code Playgroud)

Smarty的

<h1>{$title}</h1>
<ul>
  {foreach item=item from=$items}
  <li>{$item}</li>
  {/foreach}
</ul>
Run Code Online (Sandbox Code Playgroud)

我真的没有看到任何差异.

php template-engine smarty

58
推荐指数
6
解决办法
1万
查看次数

如何在smarty中增加指定变量而不显示它

所以我在smarty中有一个指定的变量:

{assign var=number value=0}
Run Code Online (Sandbox Code Playgroud)

现在我可以使用它来增加它

{$number++}
Run Code Online (Sandbox Code Playgroud)

要么

{++$number}
Run Code Online (Sandbox Code Playgroud)

这正是我需要的,唯一的问题是,它在页面上显示$ number的值.有没有办法可以增加值但不显示它?

这不是在循环内部使用,否则我会使用迭代或索引之类的东西.

php smarty

41
推荐指数
3
解决办法
7万
查看次数

如何在智能模板文件中分配数组?

我想知道是否可以将数组分配给Smarty模板文件中的变量?我试过这个

{assign var='file' value = array('dir','doc','exe')}
Run Code Online (Sandbox Code Playgroud)

但是当我打印出数组时,它产生了这个:

array(\'dir\',\'doc\',\'exe\') 
Run Code Online (Sandbox Code Playgroud)

如何阻止Smarty转义数组值?

提前致谢

php smarty

38
推荐指数
3
解决办法
9万
查看次数

我如何使用smarty获取当前URL

如何使用smarty获取URL(类似于URLJavaScript)?

我这样做了

{$smarty.server.PHP_SELF} 
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

smarty

36
推荐指数
2
解决办法
8万
查看次数

使用千位分隔符Smarty PHP格式化数字

我试图用数千分隔符Smarty格式化数字.

因此,例如1000变为1,000.

谢谢.

smarty

34
推荐指数
2
解决办法
4万
查看次数

打印Smarty模板中可用的所有变量

如何在Smarty模板的上下文中打印所有可用变量?类似于Django调试跟踪,列出了传递的所有内容.

谢谢

php smarty

32
推荐指数
3
解决办法
5万
查看次数

Smarty局部变量与字符串连接

如何使用串联的字符串分配本地模板变量,如下所示:

{$yes_src=const1.'yes'.const2}
Run Code Online (Sandbox Code Playgroud)

以下方式在代码中使用{$yes_src}.

php smarty

29
推荐指数
3
解决办法
5万
查看次数

如何检查Smarty中是否存在变量?

我正在使用Smarty模板引擎.

我正在做一个简单的登录页面.如果有一些问题我设置了一个带有消息的变量命名错误,但如果不是我得到:

Notice: Undefined index: error
Run Code Online (Sandbox Code Playgroud)

我怎么能检查这个变量是否存在?

我只做:

{if $error}<h1>{$error}</h1>{/if}
Run Code Online (Sandbox Code Playgroud)

谢谢

php smarty

24
推荐指数
2
解决办法
3万
查看次数

标签 统计

smarty ×10

php ×8

debugging ×1

html ×1

template-engine ×1

templates ×1