利用方法

调用mod:

index.php?mod=Mod名称

Mod文件格式:放在Mod文件夹下,文件名哀求大写并能表名Mod功能

ssh框架是php自研php的仿java的ssh框架 CSS

<?php

调用Action

Controller::doAction(“Action类名”,”Action方法名”,封装后的参数);

Controller.php?action=Action类名&method=Action方法名

注:调用Action限定只在mod或URL中调用,您可以将URL调用关闭,关闭方法:将Controller.php中

if(isset($_GET['action'])&&isset($_GET['method'])){

段注释掉

Action文件格式:Action是一个静态类,类名哀求规则与Mod相同。
不过Action哀求放在Action文件夹下且Action名与类名哀求同等:

<?php

调用Service

Controller::doService(“Service类名”,”Service方法名”,封装后的参数);

注:调用Service限定只在Action中调用

Service文件格式:Service同Action一样也是一个静态类,类名哀求规则与Action相同。
不过Service哀求放在Service文件夹下:

<?php

DB类

本类紧张用于调用数据库。

在Dao文件夹中创建任意DaoObj类,命名哀求与Action相同(同Java,类名需与文件名同等),方便在Service中import(“Dao.”.类名);调用。

调用方法:

import(\公众Dao.类名\"大众);

DaoObj定义类构造如下:

<?php

DB类利用方法如下

DB类设置

属性:

host=”localhost”;name=”数据库用户”;

pass=”数据库密码”;table=”数据库名”;

$ut=’utf8’;

query($sql);

参数:

sql要实行的语句返回值:当sql为查询时,返回值可被用于this->db->fetch_array()的参数,否则返回是否成功。

提示:

除该方法需对参数进行防注入处理外别的增编削查方法已对单引号更换,不须要防注入。

fetch_array($query);

参数:

querythis->db->query($sql)的返回值

返回值:

如果查询结果为空或全部查完了返回false,否则返回查询的一行数据。

利用方法:

$sql=\"大众select from users\公众; $query=$this->db->query($sql); while($row=$this->db->fetch_array($query)){ //...这里写处理

select_arr(name,req = array(),$like=false);

参数:

name表名req 条件数组

$like 条件是否用like

返回值:

返回查询结果数组。

利用方法:

$result=$this->db->select_arr(\公众users\"大众); foreach($result as $row){ //这里写处理,$row为每一行的数据,如$row['username']为转业username列的值。

select_first(name,req);

参数:

name表名req 条件数组

返回值:

返回查询结果的第一条,没有则返回false。

利用方法:

$result=$this->db->select_first(\"大众users\"大众,array( \公众uid\"大众=>1

update(table,list,$tiao);

参数:

table表名list 要变动的值

$tiao 条件数组

返回值:

query结果

利用方法:

$this->db->update(\公众users\"大众,array( \"大众password\"大众=>md5(\"大众admin\"大众)

fn_del(table,c);

参数:

table表名c 条件数组

返回值:

query结果

利用方法:

$this->db->fn_del(\"大众users\"大众,array( \"大众uid\"大众=>1

fn_insert(table,name,$arr);

参数:

table表名name 插入数据列名(可以根据该参数进行排序,如果没有可以填写”“,须要则按数组顺序填写元素,如array(“uid”,”username”))

$arr 插入行的数据

返回值:

query结果

利用方法:

$this->db->fn_insert(\"大众users\"大众,\公众\公众,array( \"大众null\"大众, \公众admin\公众, \"大众adminp\公众

affected_rows();

返回值:影响行数

insert_id();

返回值:AUTO_INCREASE列插入的id

View中的S标签

简介:

View内放置的是前台的网页内容,所有资源应放置在res文件夹下供view调用。
view输出在index.php入口文件下,因此相对路径便是入口文件所在位置。

View中可以嵌入

<?php

紧张是为了防止造孽访问问题。

S标签简介

我们供应了以下标签内容:

<s:iterator value=\"大众arr\"大众>

其余您可以自定义s标签,详见plugins下的S类。

解析类详见kernel下的ParseS类。

功能先容

s:iterator 标签

属性:

value 对应全局变量GLOBALS内的指定值,哀求获取的值是php的Array类型以用于遍历。
范例:value=”user.uid”对应GLOBALS[‘user’][‘uid’];

您也可获取session中的内容,获取方法:value=”session.username”

s:property 标签

属性:

value 同s:iterator的value,不过哀求获取的值是php的字符串或数字等可直接输出的类型。

范例:value=”user.uid” 对应 $GLOBALS[‘user’][‘uid’];

type 指定为item时,必须与s:iterator搭配,表示该iterator中的循环元素。

范例:

<s:iterator value=\公众users\公众>

对应php语句为

foreach($GLOBALS['users'] as $item){ echo \公众a\"大众; echo $item['user']['uid']; echo \"大众b\"大众; echo $item['user']['username']; echo \"大众c\"大众;

如果须要对属性进行遍历则须要如下写法:

<s:iterator value=\"大众pro\"大众>

对应php语句为

foreach($GLOBALS['pro'] as $sheng=>$shi){ echo $sheng; echo \"大众=>\"大众; echo $shi;//当property的value为空时其值为为当前遍历key=>value里的value。

s:if 标签

属性:

test 调用Test.php中Test类的静态方法,其它属性值作为参数传入(不能在属性中嵌入s标签),当前运行状态可以通过kernel.HookParse类获取

范例:

<s:if test=\公众test\"大众 v=\"大众a\公众>

等价于:

if(Test::test(array(\"大众test\"大众=>\"大众test\公众,\"大众v\公众=>\"大众a\"大众))) echo $GLOBALS['user']['username']; else

s:css 标签

属性:

src css文件的名字

范例:

<s:css src=\公众m.index\"大众 />1

等价于

<link href=\"大众assests/css/m/index.css\"大众 rel=\"大众stylesheet\"大众 type=\"大众text/css\"大众 />1

s:js 标签

属性:

src js文件的名字

范例:

<s:js src=\"大众m.index\"大众 />1

等价于

<script src=\"大众assests/m/index.js\"大众 type=\"大众text/javascript\公众 />1

s:img 标签

属性:

src img文件的带后缀名字(可以加其他参数)

范例:

<s:img src=\"大众m.logo.png\"大众 width=\公众100%\"大众/>1

等价于

<img src=\"大众assests/images/m/logo.png\"大众 width=\公众100%\"大众 />1

自定义标签

S类

简介

S类为自定义s标签插件类。
当碰着不认识的s标签时,parse阐明器会调用S插件内的以参数命名的方法实行其功能。
每要输出一条数据时,index都会调用onText或onParamText两个参数中的一个。
如果是普通文本则调用onText否则是s标签天生的就调用另一个。

S类方法命名

<s:g a=\"大众b\"大众>XXX</s:g>1

这段代码用S类拦截须要定义两个标签:

public static function g($param){//<s:g>时实行的内容,$param是属性键值对的array

如果须要对内部的内容进行掌握,则须要在onText内对文本进行处理。
您可以通过设置静态变量标志判断该text是不是标签内的内容。
如果须要对内容内的标签进行处理,请利用kernel.HookParse类

预定义的s标签

我们已经预写了一些s标签,如:

s:checkcode标签用于显示验证码

验证码类:Service.model.ValidateCode

做事:Service.CheckCodeService

须要验证验证码可以利用Controller::doService(“CheckCodeService”,”checkCode”,验证码);方法。
返回真伪值表示验证码是否精确。

s:jquery、s:tether、s:bootstrap、s:ueditor标签用于引用各前端js与css文件