站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
SpeedPHP/自定义函数库
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
{{SpeedPHP top}} 在[[SpeedPHP]]框架开发中,开发者可以加入和使用自定义的函数库。 函数库通常是放置到一个专门的函数库文件中,然后在应用程序入口文件的全局位置中载入,然后在系统各处使用。 *函数库建议放到专门的文件中进行载入,以方便管理。 *函数也可以直接放置在全局位置中,这适用于少量的函数引入的情况。 *函数需要通过spAddViewFunction来注册到模板中,才可以在[[Smarty]]模板中使用该函数。 ==自定义函数库== 这里我们自定义了一个函数叫mydate,作用是提供个性化日期显示,并将其注册到模板中使用,以此为例说明如何放置自定义函数库。 例子下载:http://speedphp.com/cms/uploads/dev_diy_functions.zip 1. 自定义函数在[[应用程序]]目录(APP_PATH)的include目录中,文件名是functions.php,我们在入口文件的全局位置中载入。 <pre>require(SP_PATH."/SpeedPHP.php"); // 这里是入口文件全局位置 import(APP_PATH.'/include/functions.php'); spRun(); </pre> 2. 载入后,直接可以使用,本例中是在/index.php?c=main&a=show中直接使用mydate函数 <pre>function show(){ header("Content-type: text/html; charset=utf-8"); // 直接输出UTF8 echo mydate(strtotime("-1 day")); // 直接显示mydate函数的结果 echo "<p><a href="".spUrl('main','index')."">模板显示</a></p>"; } </pre> 3. 在functions.php中,我们使用spAddViewFunction来把mydate注册到模板中,由于模板函数的格式和普通函数有些不同,所以加入一个tpl_mydate函数来对mydate进行一下封装。 <pre>// mydate函数 function mydate($time = null){ if( null == $time )$time = time(); // 默认是当前时间 if( $time > (time() - 3600) ){ return "刚才"; }elseif( $time > (time() - 3600 * 24) ){ return "今天"; }elseif( $time > (time() - 3600 * 24 * 2) ){ return "昨天"; }elseif( $time > (time() - 3600 * 24 * 3) ){ return "前天"; }else{ return date("Y-m-d H:s", $time); } } // 将mydate注册到模板中使用,所以需要加入tpl_mydate函数进行一次封装 function tpl_mydate($params){ return mydate($params['time']); } // 使用spAddViewFunction来注册,模板中使用thedate来进行调用 spAddViewFunction('thedate','tpl_mydate'); </pre> 4. 这样,在模板中也可以使用该函数了,调用的方法如下,演示在/index.php?c=main&a=index中。 <pre><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>自定义函数演示</title> </head> <body> <p>显示第一个时间:<{thedate time=$first_time}></p> <p>显示第二个时间:<{thedate time=$second_time}></p> <p>显示第三个时间:<{thedate time=$third_time}></p> <p><a href="<{spUrl c=main a=show}>">直接显示</a></p> </body> </html> </pre> 注意:本例也包括了在函数库中,使用spAddViewFunction来对函数进行注册,以便让函数可以在Smarty模板中使用。 建议将spAddViewFunction的注册放置在函数定义[[代码]]附近,这样有利于寻找模板函数定义。 ==参考来源== http://speedphp.com/manual.html {{SpeedPHP}} [[category:SpeedPHP|Z]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:SpeedPHP
(
编辑
)
模板:SpeedPHP top
(
编辑
)