导航:首页 > 编程语言 > smarty和php

smarty和php

发布时间:2023-03-29 06:23:21

① thinkphp中如何用内置的smarty调用php中自定义的函数

可以自己写个smarty插件,我以前写过,你根据smarty手册上的提示也可以写出来的。相信自己!

这是我以前写的,转换时间的:

<?php
/**
*时间显示,将Unix时间或普通时间和转为生活时间用语
*/
functionsmarty_modifier_life_time($string)
{
if(strpos($string,'-')||strpos($string,'.'))
{
$string=strtotime($string);
}
$res=time()-$string;
if($res<=60)
{
return'1分钟前';
}elseif($res<=3600){
if($res>=1800&&$res<=1800+60) return'半小时前';
returnfloor($res/60).'分钟前';
}elseif($res<=3600*24){
if($res>=3600*12&&$res<=3600*12+3600) return'半天前';
returnfloor($res/3600).'小时前';
}elseif($res<=3600*24*30){
if($res>=3600*24*15&&$res<=3600*24*15+3600*24) return'半个月前';
returnfloor($res/(3600*24)).'天前';
}elseif($res<=3600*24*30*365){
if($res>=3600*24*30*6&&$res<=3600*24*30*6+3600*24*30) return'半年前';
returnfloor($res/(3600*24*30)).'月前';
}else{
if($res>=3600*24*30*365&&$res<=3600*24*30*365+3600*24*30) return'一年前';
returndate('Y-m-dH:i',$string);
}
}
?>

② php 的框架与模板

楼主的认知不对哦,以下为楼主解惑:

框架:在php源码的基础上,开发者将常用的功能进行二次封装形成的代码集合,其本身往往不具备任何可用的功能,其目的仅仅是使开发人员可以基于框架更快的开发出符合要求的应用。例如,不使用框架开发一个用户管理功能可能需要5天,使用框架可以将这个时间缩短到2天。实际上,对于任何一个项目,访问控制、数据库访问、文件处理等功能都是必备的,框架就是将这些常用功能进行了更易用的封装,避免开发人员在通用组件上重复开发,浪费时间。

模板:为了将PHP内容和html内容更好的分离为目的产生的一种应用,其主要目的是为了网页制作人员可以不去学习PHP就能修改页面的内容(可惜不学PHP还要学smarty,因此我个人并不觉得模板真的能带来什么实际的好处)

另外,如dede,DZ,PHPCMS等是基于PHP的产品,本身已经具备了大量的功能,安装之后就能使用,当然,因为需求的不同可能需要在该产品的基础上进行二次开发。

综述,模板没有太大的价值,完全可以在非用不可的时候再去学习,对于PHP开发人员来说,smarty可以立刻上手。它可以(也只能)被框架或PHP产品使用。框架是必须掌握的,定制性很强的项目必然都是基于框架开发的。PHP产品,如果你要开发的项目和某个PHP产品的功能达到80%以上的契合,那么应该考虑基于该产品进行开发。

一些网站提供简单的博客,留言板等的源码,不基于框架的小项目实际上只能称为练习,只有参考价值。

注:不是说不使用框架的项目就不算项目,事实上如果一个项目如果没有使用某某框架,其项目的一部分代码也必然的会具有框架的特征,即自定义框架也是框架。

③ 怎么判断php循环中是不是最后一个 smarty

我觉得可以这样,可以读取记录的时候将数据的条数也查出来。assign到前台页面,循环都是可以获取当前循环的次数的,虽然我并不知道smarty的foreach 循环获取当前循环次数是哪个参数,你可以查一查,应该能查到,这个,用当前循环次数,和数据的总数,也就是总循环次数比较,相等的话就是最后一次循环了。------解决方案--------------------1、你这不是 php 循环,而是模板语言的循环2、你的这个很像 smarty 模板语言,但不能确定。很多模板引擎都套用这个格式3、如果能确认是 smarty 模板引擎,那么有一个 last 属性正好满足你的需要.last 当前 foreach 循环执行到最后一遍时 last 被设置成 true.{* 在列表最后添加水平线 *} {foreach from=$items key=part_id item=prod name=procts} {foreachelse} ... content ... {/foreach} 相应的还有很多实用的属性可供使用,比如:index、iteration、first、total等这些都是那些有着 smarty 形,却无 smarty 质的所谓高效模板引擎所做不到的如果你还是不会的话je
可以去后盾里面查询 里面有很多资料,可以供你参考。

④ 求大神 解释smarty和thinkphp的区别

Smarty是一个php模板引擎。
thinkphp是一个php框架。

⑤ php标签在smarty里面不能使用,怎么办

smarty本身是不推荐使用php标记的仿毕销,备游可以通过编写插件(block,function,modifier)来代替。
smarty默认不开启php标记,需要在创建smarty对象后做数丛如下设置:
$smarty->php_handling = SMARTY_PHP_ALLOW ;

⑥ smarty是什么东西,主要干什么用的

什么是smarty?

Smarty是一个使用PHP写出来的模板PHP模板引擎,由PHP.net官方提供,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程序员同美工分离,使用的程序员改变程序的逻辑内容不会影响到美工的页面设计,美工重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要。

smarty优点

1. 速度:采用smarty编写的程序可以获得最大速度的提高,这一点是相对于其它的模板引擎技术而言的。

2. 编译型:采用smarty编写的程序在运行时要编译成一个非模板技术的PHP文件,这个文件采用了PHP与HTML混合的方式,在下一次访问模板时将WEB请求直接转换到这个文件中,而不再进行模板重新编译(在源程序没有改动的情况下)

3. 缓存技术:smarty选用的一种缓存技术,它可以将用户最终看到的HTML文件缓存成一个静态的HTML页,当设定smarty的cache属性为true时,在smarty设定的cachetime期内将用户的WEB请求直接转换到这个静态的HTML文件中来,这相当于调用一个静态的HTML文件。

4. 插件技术:smarty可以自定义插件。插件实际就是一些自定义的函数。

5. 模板中可以使用if/elseif/else/endif。在模板文件使用判断语句可以非常方便的对模板进行格式重排。

不适合使用smarty的地方

1. 需要实时更新的内容。例如像股票显示,它需要经常对数据进行更新,这类型的程序使用smarty会使模板处理速度变慢。

2. 小项目。小项目因为项目简单而美工与程序员兼于一人的项目,使用smarty会丧失php开发迅速的优点。

⑦ smarty怎么用php函数把字符串转成数组后在计算数组个数

以下是对php中的数组与字符串的转换函数进行了详细的整理汇总,需要的朋友可以参考下

1.将一个字符串转化为数组
str_split()用于将一个字符串转化为数组
语法:

复制代码
代码如下:

str_split(string,length)
<SPAN
style="COLOR: #333333"><SPAN style="FONT-SIZE: 12px"><SPAN
style="FONT-FAMILY:
宋体">//</SPAN></SPAN></SPAN>string是必须的,是要分割的字符串;<SPAN
style="FONT-SIZE: 12px"><SPAN style="FONT-FAMILY: 宋体; COLOR:
#333333"><SPAN style="LINE-HEIGHT:
28px">
//length是可选的,规定每个数组元素的长度
</SPAN></SPAN></SPAN>

tips:
如果 length 小于 1,str_split() 函数将返回
false。
如果 length 大于字符串的长度,整个字符串将作为数组的唯一元素返回。
例子:

复制代码
代码如下:

<?php
$str="www..com";
print_r(str_split($str));
?>

阅读全文

与smarty和php相关的资料

热点内容
兄弟训诫文严厉 浏览:607
李楠程序员 浏览:288
山推管家app怎么改密码 浏览:680
贷款结束什么时候解压 浏览:142
18命令方块代码 浏览:936
安卓手机视频怎么传到mac电脑上 浏览:932
马缨花app是什么 浏览:6
python金融分析招聘 浏览:60
可以直接写电影就有免费 浏览:108
北京一卡通app换了手机怎么弄 浏览:155
有程序员小说 浏览:688
点开就能看的网址 浏览:450
单片机控制和plc控制系统设计 浏览:29
她通常去电影院英文翻译 浏览:274
阿里个人云服务器叫什么名字 浏览:298
萱萱日记 浏览:707
芯片app有什么用 浏览:204
DaDa兔 浏览:969
卡罗拉烟气压缩机 浏览:470
丹麦大尺度电影推荐 浏览:784