2

我想为 PHPixie 编写自己的扩展,以便在这样的模板中使用它:

<div class="title"><?=$formatStyle($person->id, $format_id)?></div>

我的扩展类(参见文档中的示例)是:

\bundles\app\src\Template\Extensions\Extension\TYM.php
<?php

namespace Project\App\Template\Extensions\Extension;

class TYM implements \PHPixie\Template\Extensions\Extension
{
    public function name()
    {
        return 'tym';
    }

    public function aliases()
    {
        return array();
    }    

    public function methods()
    {
        return array(
            'formatStyle' => 'format'
        );
    }

    public function format($string, $formtat_id)
    {
        return 'asdf'; // TO DO
    }
}

我应该把这个文件放在我的包中的什么地方?

4

1 回答 1

1

只需将您的类添加Project/Framework/Extensions.phptemplateExtensions()方法中。在我的项目中,它现在看起来像这样:

/**
 * Extensions for the Template component
 * @return array
 */
public function templateExtensions()
{
    return array_merge(parent::templateExtensions(), array(
        //add your Template Extensions here
        new \Project\App\Template\Extensions\Extension\Base64()
    ));
}

我不知道你班级的全名,所以不能提供完整的解决方案,只有例子:)

于 2017-09-05T11:18:17.357 回答