php
  • smarty
  • 2017-08-20 27 views 0 likes 
    0

    私は、配列の要素をインクルードのvarに渡そうとします。Smartyは、渡す配列をvarに入れます。

    しかし、私はまだ、このエラーを持っている:

    Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "file:/home/technique/www/site/tpl/home.html" on line 6 "{include file='include/article-latest.html' class='col-50' title=$article.TITLE tag=ARTICLE_CATEGORY.$article.CATEGORY img=$article.THUMBNAIL view='3526' share='564'}" - Unexpected ".", expected one of: "}" <-- thrown in /home/technique/www/common/lib/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on line 6

    マイコード:

    {foreach $latest_article.0 as $article} 
        {include file='include/article-latest.html' class='col-50' title=$article.TITLE tag=ARTICLE_CATEGORY.$article.CATEGORY img=$article.THUMBNAIL view='3526' share='564'} 
    {/foreach} 
    

    どうやら、問題は一定のARTICLE_CATEGORYを使用しています。これはPHPの定数は、Smartyので解釈されていないように見える... Smartyの中

    +0

    をSmartyの中でPHP定数にアクセスするには、https://www.smarty.net/ある{$ smarty.const.MY_CONSTANT}を使用することができますdocs/en/language.variables.smarty.tpl#language.variables.smarty.const –

    答えて

    0

    PHP定数は$ smarty.const.CONSTANT_NAME リファレンスはここにあるによって呼び出すことができます - https://www.smarty.net/forums/viewtopic.php?p=25903&sid=92c2eb2c177f8f82ae084361ee6c4400

    {foreach $latest_article.0 as $article} 
        {include file='include/article-latest.html' class='col-50' title=$article.TITLE tag=$smarty.const.ARTICLE_CATEGORY.$article.CATEGORY img=$article.THUMBNAIL view='3526' share='564'} 
    {/foreach} 
    

    はほかに考慮に入れます次のようになります。 - TITLEとCATEGORYはコード内の定数である可能性がありますので、$ smarty.const.TITLEと$ smarty.const.CATEGORYを適切に呼び出さなければなりません。 - ARTICLE_CATEGORYは定数であるため、配列として使用するのが奇妙です。 $ article.CATEGORYの配列が深すぎる可能性があり、Smartyによって誤って処理される可能性があります(ドットが多すぎるため)。それを修正するには、たとえば、変数を割り当てる必要があります

    {assign var="article_category" value=$smarty.const.ARTICLE_CATEGORY} 
    {foreach $latest_article.0 as $article} 
        {include file='include/article-latest.html' class='col-50' title=$article.TITLE tag=$article_category.$article.CATEGORY img=$article.THUMBNAIL view='3526' share='564'} 
    {/foreach} 
    
    関連する問題