1. [代码]使用TP框架时 放在common文件夹下文件名就叫function.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
<?php
/*************************** api开发辅助函数 **********************/
/**
* @param null $msg 返回正确的提示信息
* @param flag success CURD 操作成功
* @param array $data 具体返回信息
* Function descript: 返回带参数,标志信息,提示信息的json 数组
*
*/
function
returnApiSuccess(
$msg
= null,
$data
=
array
()){
$result
=
array
(
'flag'
=>
'Success'
,
'msg'
=>
$msg
,
'data'
=>
$data
);
print
json_encode(
$result
);
}
/**
* @param null $msg 返回具体错误的提示信息
* @param flag success CURD 操作失败
* Function descript:返回标志信息 ‘Error’,和提示信息的json 数组
*/
function
returnApiError(
$msg
= null){
$result
=
array
(
'flag'
=>
'Error'
,
'msg'
=>
$msg
,
);
print
json_encode(
$result
);
}
/**
* @param null $msg 返回具体错误的提示信息
* @param flag success CURD 操作失败
* Function descript:返回标志信息 ‘Error’,和提示信息,当前系统繁忙,请稍后重试;
*/
function
returnApiErrorExample(){
$result
=
array
(
'flag'
=>
'Error'
,
'msg'
=>
'当前系统繁忙,请稍后重试!'
,
);
print
json_encode(
$result
);
}
/**
* @param null $data
* @return array|mixed|null
* Function descript: 过滤post提交的参数;
*
*/
function
checkDataPost(
$data
= null){
if
(!
empty
(
$data
)){
$data
=
explode
(
','
,
$data
);
foreach
(
$data
as
$v
){
if
((!isset(
$_POST
[
$v
]))||(
empty
(
$_POST
[
$v
]))){
if
(
$_POST
[
$v
]!==0 &&
$_POST
[
$v
]!==
'0'
){
returnApiError(
$v
.
'值为空!'
);
}
}
}
unset(
$data
);
$data
= I(
'post.'
);
unset(
$data
[
'_URL_'
],
$data
[
'token'
]);
return
$data
;
}
}
/**
* @param null $data
* @return array|mixed|null
* Function descript: 过滤get提交的参数;
*
*/
function
checkDataGet(
$data
= null){
if
(!
empty
(
$data
)){
$data
=
explode
(
','
,
$data
);
foreach
(
$data
as
$v
){
if
((!isset(
$_GET
[
$v
]))||(
empty
(
$_GET
[
$v
]))){
if
(
$_GET
[
$v
]!==0 &&
$_GET
[
$v
]!==
'0'
){
returnApiError(
$v
.
'值为空!'
);
}
}
}
unset(
$data
);
$data
= I(
'get.'
);
unset(
$data
[
'_URL_'
],
$data
[
'token'
]);
return
$data
;
}
}
|
2. [代码]查询单个果品详细信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
/**
* 发布模块
*
* 获取信息单个果品详细信息
*
*/
public
function
getMyReleaseInfo(){
//检查是否通过post方法得到数据
checkdataPost(
'id'
);
$where
[
'id'
] =
$_POST
[
'id'
];
$field
[] =
'id,fruit_name,high_price,low_price,address,size,weight,fruit_pic,remark'
;
$releaseInfo
=
$this
->release_obj->findRelease(
$where
,
$field
);
$releaseInfo
[
'remark'
] = mb_substr(
$releaseInfo
[
'remark'
],0,49,
'utf-8'
).
'...'
;
//多张图地址按逗号截取字符串,截取后如果存在空数组则需要过滤掉
$releaseInfo
[
'fruit_pic'
] =
array_filter
(
explode
(
','
,
$releaseInfo
[
'fruit_pic'
]));
$fruit_pic
=
$releaseInfo
[
'fruit_pic'
];unset(
$releaseInfo
[
'fruit_pic'
]);
//为图片添加存储路径
foreach
(
$fruit_pic
as
$k
=>
$v
){
$releaseInfo
[
'fruit_pic'
][] =
'http://'
.
$_SERVER
[
'HTTP_HOST'
].
'/Uploads/Release/'
.
$v
;
}
if
(
$releaseInfo
){
returnApiSuccess(
''
,
$releaseInfo
);
}
else
{
returnApiError(
'什么也没查到(+_+)!'
);
}
}
|
3. [代码]findRelease() 方法的model
1
2
3
4
5
6
7
8
9
10
|
/**
* 查询一条数据
*/
public
function
findRelease(
$where
,
$field
){
if
(
$where
[
'status'
] ==
''
||
empty
(
$where
[
'status'
])){
$where
[
'status'
] =
array
(
'neq'
,
'9'
);
}
$result
=
$this
->where(
$where
)->field(
$field
)->find();
return
$result
;
}
|
4. [代码]app端接收到的数据(解码json之后:json_decode();)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
{
"flag"
:
"success"
,
"message"
:
""
,
"responseList"
: {
"id"
:
"2"
,
"fruit_name"
:
"苹果"
,
"high_price"
:
"8.0"
,
"low_price"
:
"5.0"
,
"address"
:
"天津小白楼水果市场"
,
"size"
:
"2.0"
,
"weight"
:
"2.0"
,
"remark"
:
"急需..."
,
"fruit_pic"
: [
"http://fruit.txunda.com/Uploads/Release/201508/55599e7514815.png"
,
"http://fruit.txunda.com/Uploads/Release/201508/554f2dc45b526.jpg"
]
}
}
|
5. [代码]app端接收到的数据(原生json串)
{
"flag"
:
"success"
,
"message"
:
""
,
"responseList"
:{
"id"
:
"2"
,
"fruit_name"
:
"\u82f9\u679c"
,
"high_price"
:
"8.0"
,
"low_price"
:
"5.0"
,
"address"
:
"\u5929\u6d25\u5c0f\u767d\u697c\u6c34\u679c\u5e02\u573a"
,
"size"
:
"2.0"
,
"weight"
:
"2.0"
,
"remark"
:
"\u6025\u9700..."
,
"fruit_pic"
:[
"http:\/\/fruit.txunda.com\/Uploads\/Release\/201508\/55599e7514815.png"
,
"http:\/\/fruit.txunda.com\/Uploads\/Release\/201508\/554f2dc45b526.jpg"
]}}