是否有EE2标签产生唯一ID?或者我是否需要嵌入PHP uniqid()调用以获取所需的唯一ID?感谢。
答案 0 :(得分:4)
不,没有EE标签可以做到这一点。这需要您创建自己的插件,扩展或模块。但那很简单。
我的建议是创建plugin。
在guid
文件夹中创建名为expressionengine/third_party
的文件夹
在该文件夹中,使用以下内容创建名为pi.guid.php的文件:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$plugin_info = array(
'pi_name' => 'Uniqid',
'pi_version' => '0.1',
'pi_author' => 'John Doe',
'pi_author_url' => 'http://example.org/',
'pi_description' => 'Returns uniqid() with parameters',
'pi_usage' => Guid::usage()
);
class Guid {
public function __construct()
{
$this->EE =& get_instance();
}
public function uniqid()
{
$prefix = $this->EE->TMPL->fetch_param('prefix');
$more_entropy = (strtolower($this->EE->TMPL->fetch_param('more_entropy')) == "true") ? TRUE : FALSE;
return uniqid($prefix, $more_entropy);
}
public static function usage()
{
ob_start(); ?>
Simple use:
{exp:guid:uniqid}
Parameter use:
{exp:guid:uniqid prefix="yourprefix"}
{exp:guid:uniqid more_entropy="true"}
{exp:guid:uniqid prefix="yourprefix" more_entropy="true"}
<?php
$buffer = ob_get_contents();
ob_end_clean();
return $buffer;
}
}
你去,你自己的插件通过标签创建uniqid() 使用?
{exp:guid:uniqid prefix="yourprefix"}
{exp:guid:uniqid more_entropy="true"}
{exp:guid:uniqid prefix="yourprefix" more_entropy="true"}
太棒了,对吧? 我喜欢EE ......
答案 1 :(得分:0)
没有内置EE标签输出唯一ID,没有。