ecshop基础知识大全.docx

上传人:b****7 文档编号:8952158 上传时间:2023-02-02 格式:DOCX 页数:18 大小:24.31KB
下载 相关 举报
ecshop基础知识大全.docx_第1页
第1页 / 共18页
ecshop基础知识大全.docx_第2页
第2页 / 共18页
ecshop基础知识大全.docx_第3页
第3页 / 共18页
ecshop基础知识大全.docx_第4页
第4页 / 共18页
ecshop基础知识大全.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

ecshop基础知识大全.docx

《ecshop基础知识大全.docx》由会员分享,可在线阅读,更多相关《ecshop基础知识大全.docx(18页珍藏版)》请在冰豆网上搜索。

ecshop基础知识大全.docx

ecshop基础知识大全

=========================================================================================

=在ecshop后台添加一个新的管理模块=

==

=首先在admin/common.php文件中添加相关的主目录以及子目录=

=$_LANG['aa']='信息';=

=$_LANG['03_chuan']='列表';=

=$_LANG['qin_add']='添加新';=

=其次在admin/includes/inc_menu.php文件下边添加相应的代码=

=完了之后退出后台重新进入后台之后就可以显示目录了=

=$modules['03_qin']['aa']='aa.php?

act=list';=

=$modules['03_qin']['03_chuan']='03_chuan.php?

act=list';=

=$modules['03_qin']['qin_add']='qin_add.php?

act=list';=

==

==

=如果要给用户分配这个模块的管理权限=

=首先在数据库admin_action=

=中插入相关信息action_id为父parent_id为子子的id必须和所属父的id号相同=

=然后在includes/inc_priv.php文件中添加以下信息=

=$purview['aa']='03_qin';=

=$purview['03_chuan']='03_qin';=

=$purview['qin_add']='03_qin';=

=最后清除缓存,就哦了=

=========================================================================================

 

====================================================================================================

ecshop模板制作比较核心的其实就是变量的使用,因为这些就是数据的根本,想从数据库里获取数据并显示在界面就必须使用smarty来展示,下面是

====================================================================================================

关于smarty的介绍和使用。

Smarty是一个php模板引擎,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法.

Smarty要求web服务器运行php4.0.6和以上版本.

smarty安装需要smarty库文件。

可以去官方网站下载。

网上讲了很多安装的教程,但是我都没有成功,所以直接把整个目录名改为smarty直接复制到了网站所在的目录下,然后打开

http:

//网站路径/smarty/demo/index.php,显示正常,应该算是安装成功了。

 

基本语法

所有的smarty标签都被加上了定界符.在smarty里,所有定界符以外的内容都是静态的,当smarty遇到了模板标签,将尝试解释他们,然后再以恰当的方

式输出.

默认情况下是{和},但它们是可定制的.定制方法是:

$smarty->left_delimiter='

--{';

$smarty->right_delimiter='}-->';

1.注释

模板注释被*号包围,例如{*thisisacomment*}

smarty注释将不被输出.它是模板内在的注释.

2.变量

模板变量以$开头,可以包含数字,字母和下划线。

config_file变量是例外要用#变量名#的方法引用

3.函数

smarty标签输出一个变量或者调用某种函数.

在定界符内函数和其属性将被处理和输出.例如:

{funcnameattr1="val"attr2="val"}.

funcname为函数的名称比如:

include等,attr1,attr2为属性名,val为属性相应的值。

在模板里无论是内建函数还是自定义函数都有相同的语法.

内建函数将在smarty内部工作,例如{if},{section}和{strip}.他们不能被修改.

自定义函数通过插件机制起作用,它们是附加函数,可以随意修改,自行添加.

例如{html_options}and{html_select_date}

4.属性

静态数值不需要加引号,布尔值(真或假)也不需要引号,可以是true,on,yes或者false,off,no.但是字符串例外.变量同样被用到了,它们也不能加引

号.

5.在字符串中插入变量

只能识别数字,字母,下划线和[]的组合,如果为复杂的形式需要用``将变量隔起来。

比如{funcvar="test$foo.bartest"}中只能识别变量

$foo,要识别$foo.bar,需要写成{funcvar="test`$foo.bar`test"}的格式。

6.一些保留字的显示方法

在模板中如果要将smarty的一些保留字作为语言的内容显示出来,比如显示分隔符,默认为{}的方法是:

{ldelim},{rdelim}或者

{$smarty.ldelim},{$smarty.rdelim}或者可以把{}放在{literal}..{/literal}中间输出。

smarty的保留变量

{$smarty}保留变量可以被用于访问一些特殊的模板变量.

以下是全部.

页面请求变量

以下是访问页面请求变量诸如get,post,cookies,server,enviroment和session变量的例子.例如{$smarty.server.SERVER_NAME}取得服务器变量,

{$smarty.env.PATH}取得系统环境变量path,{$smarty.request.username}取得get/post/cookies/server/env的复合变量。

{$smarty.now}变量用于访问当前时间戳.

可以用date_format调节器格式化输出.例如{$smarty.now|date_format:

"%Y-%m-%d%H:

%M:

%S"}

{$smarty.const}

你可以直接访问PHP常量.例如{$smarty.const._MY_CONST_VAL}

{$smarty.capture}

可以通过{capture}..{/capture}结构截取的输出可以使用{$smarty}变量访问.

{$smarty.config}

{$smarty}变量可以访问已经加载的config变量.

例如{$smarty.config.foo}就可以表示{#foo#}.

{$smarty.section},{$smarty.foreach}

{$smarty}变量可以访问'section'和'foreach'循环的属性.

{$smarty.template}

显示当前被处理的模板的名字.

{$smarty.version}

显示smarty模板的版本

{$smarty.ldelim}

显示左分隔符

{$smarty.rdelim}

显示右分隔符

 

变量调节器

变量调节器用于变量,自定义函数和字符串.

可以使用'|'符号和调节器名称应用调节器.

变量调节器由赋予的参数值决定其行为.

参数由':

'符号分开.

如果你用变量调节器调节数组变量,结果是数组的每个值都被调节.如果你想要调节器调节整个数组,你必须在调节器名字前加上@符号.

例如:

{$articleTitle|@count}(这将会在输出$articleTitle数组里的数目)

capitalize

将变量里的所有单词首字大写.参数值boolean型决定带数字的词是否首字大写。

默认不大写

count_characters

计算变量值里的字符数.参数值boolean型决定是否计算空格数。

默认不计算空格

cat

将cat里的参数值连接到给定的变量后面.默认为空。

count_paragraphs

计算变量里的段落数量

count_sentences

计算变量里句子的数量

count_words

计算变量里的词数

date_format

日期格式

第一个参数控制日期格式.

如果传给date_format的数据是空的,将使用第二个参数作为默认时间

%a-星期几的简写

%A-星期几的全写

%b-月份的简写

%B-月份的全写

%c-日期时间06/12/0511:

15:

10

%C-世纪时间

%d-一个月的第几号(从01到31)

%D-同%m/%d/%y

%e-一个月的第几号,号为单数则前面加一空格(从1到31)

%g-世纪

%G-世纪[0000,9999]

%h-同%b

%H-24小时形式的小时(从00到23)

%I-12小时形式的小时(从01到12)

%j-一年中的第几天(从001到366)

%k-24小时形式的小时,单数字前面加空格.(从0到23)

%l-12小时形式的小时,单数字前面加空格.(range1to12)

%m-月份(range01to12)

%M-分

%n-换行符

%p-显示早上还是下午`am'或`pm'

%r-a.m.或p.m.形式的时间

%R-24小时形式的时间

%S-秒

%t-tab符号

%T-同%H:

%M:

%S

%u-用[1,7],表示星期几

%U-计算是该年的第几个星期,从该年的第一个星期天开始计算

%V-计算是该年的第几个星期,从01到53,第一个星期必须至少有4天在这一年,星期天作为这个星期的第一天

%w-用数字的形式表示是星期的第几天,星期天为0

%W-用数字的形式是该年的第几个星期,从该年的第一个星期一开始计算

%x-显示日期:

月/日/年

%X-显示时间:

小时:

分钟:

%y-不包括世纪的年份

%Y-包括世纪的年份

%Z-时区

%%-输出%

其中有些有时不能正常输出。

default

默认

为空变量设置一个默认值.

当变量为空或者未分配的时候,将由给定的默认值替代输出.

escape

转码

参数值为html,htmlall,url,quotes,hex,hexentity,javascript。

默认是html转码

indent

缩进

在每行缩进字符串,第一个参数指定缩进多少个字符,默认是4个字符.第二个参数,指定缩进用什么字符代替。

lower

小写

Thisisusedtolowercaseavariable.

将变量字符串小写

nl2br

换行符替换成

regex_replace

正则替换

寻找和替换正则表达式.必须有两个参数,参数1是替换正则表达式.参数2使用什么文本字串来替换

replace

替换

简单的搜索和替换字符串必须有两个参数,参数1是将被替换的字符串.参数2是用来替换的文本

spacify

spacify是在字符串的每个字符之间插入空格或者其他的字符串.参数表示将在两个字符之间插入的字符串,默认为一个空格。

string_format字符串格式化

是一种格式化浮点数的方法.例如十进制数.使用sprintf语法格式化。

参数是必须的,规定使用的格式化方式。

%d表示显示整数,%.2f表示截取两个

浮点数。

strip去除(多余空格)

替换所有重复的空格,换行和tab为单个或者指定的字符串.如果有参数则是指定的字符串。

strip_tags去除所有html标签

truncate截取

参数1,规定截取的字符数.默认是80个.

第二个参数指定在截取的那段字符串后加上什么字符.默认为...

第三个参数决定是否精确截取,默认情况下为false,则smarty不会分割单词。

upper将变量改为大写

wordwrap行宽约束

第一个参数指定段落的宽度(也就是多少个字符一行,超过这个字符数换行).默认80.

第二个参数指定在约束点使用什么字符(默认是换行符\n).

第三个参数决定是否精确截取字符,默认情况下是不精确截取,就是截取时不能分开单词。

内建函数

内建函数不能擅自修改。

capture

capture函数的作用是收集模板输出的数据到一个变量里,而不是把它们输出到页面.例如任何在{capturename="foo"}和{/capture}之间的数据都被

收到了由函数的名称属性指定的变量{$foo}里,或者{$smarty.capture.foo}里。

如果函数没有名字属性,将使用"default".每个{capture}都必须对

应{/capture},也不能嵌套使用capture函数。

config_load

引用配置文件

file是必须的,说明要包含进来的配置文件名称,section说明要加载的部分的名称,scope被处理的变量的作用域.必须是local,parent或者

global.

local的意思是变量将在本模板里被加载.

parent的意思是变量将在本模板和上级模板被加载.

global的意思是变量将应用到所有的模板.默认为local。

变量是否在上级模板可视,默认为no。

如果scope属性已经有了,这个值将被忽略.

foreach,foreachelse

foreach循环是选择性的section循环.用于遍历关联数组.foreach的语法比section简单的多,但是作为一个折中它只能用于简单数组.

foreach必须的参数是from和item.from变量表示需要循环的数组的名称,item表示当前元素的变量名,key表示当前关键字的变量名,name表示访问

foreach属性的foreach循环名。

循环可以互相嵌套,被嵌套的循环之间的名字必须是独立的.foreachelse在from变量没有值的时候被执行

include

用来引用其他的模板。

file属性是必须的用来表示所引用模板的名字,assign表示include文件将要分配的输出的变量。

你可以自行用属性名="属性值"的方式定义任意个局

部变量。

include_php

用来在模板中引入php脚本。

file是必须的用来表示php脚本的路径,once确定如果在模板中引用了php脚本多次,是否只装载一次。

默认为true。

insert

用来包含php脚本中的函数,name是必须的,表示所插入的脚本的名称,注意如果名称是name,则包含的函数则是insert_name(),所以所有要插入的

函数要有前缀insert_。

如果用了assign属性,则insert的输出将会分配给模板变量而不会显示。

script表示要引用的脚本路径。

这个程序产生的

内容将不会被缓存,在每次调用该页时重新执行,适用于广告,投票,查询结果等互动的地方。

if,elseif,else

if语句和和条件同php差不多,但每个词之间必须用空格分割开。

也有一些新的条件语句,列举如下:

eq相等,ne、neq不相等,gt大于,lt小于,

gte、ge大于等于,lte、le小于等于,not非,mod求模。

is[not]divby是否能被某数整除,is[not]even是否为偶数,$ais[not]evenby

$b即($a/$b)%2==0,is[not]odd是否为奇,$aisnotoddby$b即($a/$b)%2!

=0

php

php标记可以让模板中能直接使用php语言。

section,sectionelse

section用来循环显示数组的数据,name和loop是必须的参数。

name表示嵌套名.section可以嵌套使用,但是名字必须各不相同。

loop表示循环的次

数.sectionelse在loop参数为空的输出。

start用来规定循环开始的指针,如果值为负则从数组尾部计算开始的指针,默认为0.step表示循环的步数,

为负则反向循环,默认为1.max设定循环的最大步数.show决定是否显示section.

section也有自己的变量处理section属性,用{$smarty.section.sectionname.varname}来显示.

index

index用来显示当前循环的指针,从0开始.

index_prev

用来显示前一次循环的指针,从-1开始

index_next

用来显示后一次循环的指针.

iteration

显示当前循环的次数,从1开始.

first

如果当前循环为第一个循环,则值为true.

last

如果当前循环为最后一个循环,则值为true.

rownum

同iteration.

loop

显示最后一次循环的指针,可以用在section中间的任何地方,也可以用在section之后.

show

show决定是否显示section.

total

显示总共循环的次数,可以用在section中间的任何地方,也可以用在section之后.

strip

去掉多余的空格

常规函数

assign

assign用来在执行模板时分配变量值.var,value是必须的参数.var为要分配值的变量名,value为分配的值.

counter

counter用来输出一个计数.可以用多个计数,但是名字必须各不相同.name表示计数器名,默认为default.start表示计数的初始值,默认为1.skip计数

的间隔,默认为1.direction表示计数方向,up或down,默认为up.print表示是否打印该值,默认为true.assign定义模板变量,计数器的输出将被分配

到assign定义的变量中.

cycle

Cycle用来循环显示一组数值.name表示cycle名,values("值1","值2",...)表示循环显示的一组数值.print表示是否显示.advance决定是否显示下一

个数值.delimiter决定value的分隔符,默认为逗号.assign定义模板变量,cycle的输出将被分配到assign定义的变量中.

debug

debug可以显示所有分配了值的变量,但是不显示模板内容,output属性决定显示的格式html或javascript,默认是html.

eval

eval用来在变量里插入变量。

var是插入的变量名,assign把输出分配给一个变量。

fetch

用来取得文件内容,并输出文件内容,可以取得本地文件,http文件和ftp文件,file是取得文件的路径,assign把输出分配给一个变量。

html_checkboxes

html_checkbox用来用给定的数据创建checkbox。

name表示checkbox的名称,values表示checkbox的值,output表示checkbox的显示,selected表示

被选选项的值,options表示一组checkbox的值和显示,separator表示分割每个checkbox的符号,labels表示给输出添加标签,默认为true。

html_image

html_image用来为一个图片创建html标签,如果height和width不分配值将会自动生成。

file是图片的路径,height,width,alt同html标签,

basedir是图片相对路径开始的目录的路径,默认为服务器根目录。

href定义图片的链接。

html_options

输出下拉列表,参数有name,values,output,selected,options。

html_radios

输出单选框,参数同复选框。

html_select_date

prefix定义各个下拉列表名字的前缀,默认为Date_。

time决定使用的时间,默认是当前时间。

start_year决定下拉列表开始的年份,可以用年份表

示,也可以用与当前年份的相对年数来表示。

默认是当前年份。

end_year决定下拉列表结束的年份,可以用年份表示,也可以用与当前年份的相对

年数来表示。

默认是当前年份。

display_days决定是否显示日期。

display_months决定是否显示月份。

display_years决定是否显示年份。

month_format决定显示月份的格式,默认为%B。

day_format决定显示日期的格式,默认为d。

day_value_format决定日期值的格式,默认为%d。

month_value_format决定月份值的格式,默认为%m。

year_as_text决定是否将年份按文本格式输出。

reverse_years决定是否反向输出各年份。

field_array用来取得一组变量,可以用name[Day],name[Month],name[Year]的方式从form取得获得的值。

day_size,month_size,year_size添加

大小标签。

all_extra,day_extra,month_extra,year_extra添加额外的属性到select或input标签。

field_order决定年月日下拉列表的顺序,

默认为MDY。

field_separator不同下拉列表之间的分隔符,默认是\n。

year_empty,month_empty,day_empty是在各下拉列表第一栏显示的内容。

html_select_time

prefix定义各个下拉列表名字的前缀,默认为Time_。

time决定使用的时间,默认是当前时间。

display_hours决定是否显示小时。

display_minutes

决定是否显示分钟。

display_seconds决定是否显示秒数。

display_meridian决定是否显示上午或下午,即显示am/pm。

use_24_hours决定是否24小

时制。

minute_interval决定分钟之间的间隔。

second_interval决定秒数之间的间隔。

field_array用来取得一组变量,可以用name[Hour],name

[Minute],name[Second]的方式从form取得获得的值。

all_extra,hour_extra,minute_extra,second_extra,meridian_extra添加额外的属性到

select或input标签。

html_table

loop定义用于循环的一组数据。

cols决定列的数目,rows决定行的数目,如果其中一个为空,另一个有值,则根据元素个数和有值的属性来计算另一

个的值,两者的默认值为3。

inner决定元素的列举方向cols则列跟着列排列,rows则行跟着行排列,默认为cols。

table_attr,tr_attr,td_attr

分别为table,tr,td增加标签,如果tr_a

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 军事政治

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1