@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | } |
95 | 95 | /** |
96 | 96 | * session管理函数 |
97 | - * @param string|array $name session名称 如果为数组则表示进行session设置 |
|
97 | + * @param string $name session名称 如果为数组则表示进行session设置 |
|
98 | 98 | * @param mixed $value session值 |
99 | 99 | * @return mixed |
100 | 100 | */ |
@@ -407,6 +407,11 @@ discard block |
||
407 | 407 | $value .= ' '; |
408 | 408 | } |
409 | 409 | } |
410 | +/** |
|
411 | + * @param string $name |
|
412 | + * |
|
413 | + * @return string|null |
|
414 | + */ |
|
410 | 415 | function config($name=null,$value=null,$default=null){ |
411 | 416 | $config=\puck\Conf::load(); |
412 | 417 | if ($name===null){ |
@@ -70,15 +70,10 @@ |
||
70 | 70 | |
71 | 71 | |
72 | 72 | /** |
73 | - |
|
74 | 73 | * 数据签名认证 |
75 | - |
|
76 | 74 | * @param array $data 被认证的数据 |
77 | - |
|
78 | 75 | * @return string 签名 |
79 | - |
|
80 | 76 | * @author 麦当苗儿 <[email protected]> |
81 | - |
|
82 | 77 | */ |
83 | 78 | function data_auth_sign($data) { |
84 | 79 | //数据类型检测 |
@@ -35,18 +35,18 @@ discard block |
||
35 | 35 | return $ip[$type]; |
36 | 36 | } |
37 | 37 | //2为直接输出数组 |
38 | -function show_json(array $arr,$type=2) |
|
38 | +function show_json(array $arr, $type=2) |
|
39 | 39 | { |
40 | 40 | |
41 | - if(isset($arr['status']) && $type==2){ |
|
41 | + if (isset($arr['status']) && $type == 2) { |
|
42 | 42 | $ret=$arr; |
43 | 43 | } |
44 | - else{ |
|
45 | - $ret['status'] = $type; |
|
46 | - $ret['data'] = $arr; |
|
44 | + else { |
|
45 | + $ret['status']=$type; |
|
46 | + $ret['data']=$arr; |
|
47 | 47 | } |
48 | 48 | |
49 | - $obj = json_encode($ret); |
|
49 | + $obj=json_encode($ret); |
|
50 | 50 | header('Content-Type: application/json'); |
51 | 51 | echo $obj; |
52 | 52 | exit(); |
@@ -54,14 +54,14 @@ discard block |
||
54 | 54 | |
55 | 55 | function success($arr) |
56 | 56 | { |
57 | - show_json($arr,1); |
|
57 | + show_json($arr, 1); |
|
58 | 58 | } |
59 | 59 | |
60 | 60 | function error($arr) |
61 | 61 | { |
62 | - show_json($arr,0); |
|
62 | + show_json($arr, 0); |
|
63 | 63 | } |
64 | -function not_found($str='page not found,that is all we know!'){ |
|
64 | +function not_found($str='page not found,that is all we know!') { |
|
65 | 65 | header('HTTP/1.1 404 Not Found'); |
66 | 66 | header("status: 404 Not Found"); |
67 | 67 | exit($str); |
@@ -82,13 +82,13 @@ discard block |
||
82 | 82 | function data_auth_sign($data) { |
83 | 83 | //数据类型检测 |
84 | 84 | |
85 | - if(!is_array($data)){ |
|
85 | + if (!is_array($data)) { |
|
86 | 86 | |
87 | - $data = (array)$data; |
|
87 | + $data=(array) $data; |
|
88 | 88 | } |
89 | 89 | ksort($data); //排序 |
90 | - $code = http_build_query($data); //url编码并生成query字符串 |
|
91 | - $sign = sha1($code); //生成签名 |
|
90 | + $code=http_build_query($data); //url编码并生成query字符串 |
|
91 | + $sign=sha1($code); //生成签名 |
|
92 | 92 | return $sign; |
93 | 93 | } |
94 | 94 | /** |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | * @param mixed $value session值 |
98 | 98 | * @return mixed |
99 | 99 | */ |
100 | -function session($name = '', $value = '') { |
|
100 | +function session($name='', $value='') { |
|
101 | 101 | if (is_array($name)) { |
102 | 102 | |
103 | 103 | if (isset($name['id'])) { |
@@ -149,16 +149,16 @@ discard block |
||
149 | 149 | session_start(); |
150 | 150 | } elseif ('[destroy]' == $name) { |
151 | 151 | // 销毁session |
152 | - $_SESSION = array(); |
|
152 | + $_SESSION=array(); |
|
153 | 153 | session_unset(); |
154 | 154 | session_destroy(); |
155 | 155 | } elseif ('[regenerate]' == $name) { |
156 | 156 | // 重新生成id |
157 | 157 | session_regenerate_id(); |
158 | 158 | } |
159 | - }else { |
|
159 | + } else { |
|
160 | 160 | if (strpos($name, '.')) { |
161 | - list($name1, $name2) = explode('.', $name); |
|
161 | + list($name1, $name2)=explode('.', $name); |
|
162 | 162 | return isset($_SESSION[$name1][$name2]) ? $_SESSION[$name1][$name2] : null; |
163 | 163 | } else { |
164 | 164 | return isset($_SESSION[$name]) ? $_SESSION[$name] : null; |
@@ -167,7 +167,7 @@ discard block |
||
167 | 167 | } elseif (is_null($value)) { |
168 | 168 | // 删除session |
169 | 169 | if (strpos($name, '.')) { |
170 | - list($name1, $name2) = explode('.', $name); |
|
170 | + list($name1, $name2)=explode('.', $name); |
|
171 | 171 | unset($_SESSION[$name1][$name2]); |
172 | 172 | } else { |
173 | 173 | unset($_SESSION[$name]); |
@@ -175,30 +175,30 @@ discard block |
||
175 | 175 | } else { |
176 | 176 | // 设置session |
177 | 177 | if (strpos($name, '.')) { |
178 | - list($name1, $name2) = explode('.', $name); |
|
179 | - $_SESSION[$name1][$name2] = $value; |
|
178 | + list($name1, $name2)=explode('.', $name); |
|
179 | + $_SESSION[$name1][$name2]=$value; |
|
180 | 180 | } else { |
181 | - $_SESSION[$name] = $value; |
|
181 | + $_SESSION[$name]=$value; |
|
182 | 182 | } |
183 | 183 | } |
184 | 184 | return null; |
185 | 185 | } |
186 | 186 | |
187 | 187 | |
188 | -function admin_is_login(){ |
|
189 | - $user = session('admin_user_auth'); |
|
188 | +function admin_is_login() { |
|
189 | + $user=session('admin_user_auth'); |
|
190 | 190 | if (empty($user)) { |
191 | 191 | return 0; |
192 | 192 | } else { |
193 | 193 | $auth_sign=session('admin_user_auth_sign'); |
194 | - if(data_auth_sign($user)!=$auth_sign){ |
|
194 | + if (data_auth_sign($user) != $auth_sign) { |
|
195 | 195 | return 0; |
196 | 196 | } |
197 | 197 | return $user['uid']; |
198 | 198 | } |
199 | 199 | } |
200 | -function json($str){ |
|
201 | - $obj = json_encode($str,JSON_UNESCAPED_UNICODE); |
|
200 | +function json($str) { |
|
201 | + $obj=json_encode($str, JSON_UNESCAPED_UNICODE); |
|
202 | 202 | header('Content-Type: application/json'); |
203 | 203 | echo $obj; |
204 | 204 | } |
@@ -210,20 +210,20 @@ discard block |
||
210 | 210 | * @param integer $flags htmlspecialchars flags |
211 | 211 | * @return void|string |
212 | 212 | */ |
213 | -function dump($var, $echo = true, $label = null, $flags = ENT_SUBSTITUTE) |
|
213 | +function dump($var, $echo=true, $label=null, $flags=ENT_SUBSTITUTE) |
|
214 | 214 | { |
215 | - $label = (null === $label) ? '' : rtrim($label) . ':'; |
|
215 | + $label=(null === $label) ? '' : rtrim($label).':'; |
|
216 | 216 | ob_start(); |
217 | 217 | var_dump($var); |
218 | - $output = ob_get_clean(); |
|
219 | - $output = preg_replace('/\]\=\>\n(\s+)/m', '] => ', $output); |
|
218 | + $output=ob_get_clean(); |
|
219 | + $output=preg_replace('/\]\=\>\n(\s+)/m', '] => ', $output); |
|
220 | 220 | if (IS_CLI) { |
221 | - $output = PHP_EOL . $label . $output . PHP_EOL; |
|
221 | + $output=PHP_EOL.$label.$output.PHP_EOL; |
|
222 | 222 | } else { |
223 | 223 | if (!extension_loaded('xdebug')) { |
224 | - $output = htmlspecialchars($output, $flags); |
|
224 | + $output=htmlspecialchars($output, $flags); |
|
225 | 225 | } |
226 | - $output = '<pre>' . $label . $output . '</pre>'; |
|
226 | + $output='<pre>'.$label.$output.'</pre>'; |
|
227 | 227 | } |
228 | 228 | if ($echo) { |
229 | 229 | echo($output); |
@@ -248,99 +248,99 @@ discard block |
||
248 | 248 | * @param mixed $datas 要获取的额外数据源 |
249 | 249 | * @return mixed |
250 | 250 | */ |
251 | -function I($name, $default = '', $filter = null, $datas = null) |
|
251 | +function I($name, $default='', $filter=null, $datas=null) |
|
252 | 252 | { |
253 | - static $_PUT = null; |
|
253 | + static $_PUT=null; |
|
254 | 254 | if (strpos($name, '/')) { |
255 | 255 | // 指定修饰符 |
256 | - list($name, $type) = explode('/', $name, 2); |
|
257 | - } else{ |
|
256 | + list($name, $type)=explode('/', $name, 2); |
|
257 | + } else { |
|
258 | 258 | // 默认强制转换为字符串 |
259 | - $type = 's'; |
|
259 | + $type='s'; |
|
260 | 260 | } |
261 | 261 | if (strpos($name, '.')) { |
262 | 262 | // 指定参数来源 |
263 | - list($method, $name) = explode('.', $name, 2); |
|
263 | + list($method, $name)=explode('.', $name, 2); |
|
264 | 264 | } else { |
265 | 265 | // 默认为自动判断 |
266 | - $method = 'param'; |
|
266 | + $method='param'; |
|
267 | 267 | } |
268 | 268 | switch (strtolower($method)) { |
269 | 269 | case 'get': |
270 | - $input = &$_GET; |
|
270 | + $input=&$_GET; |
|
271 | 271 | break; |
272 | 272 | case 'post': |
273 | - $input = &$_POST; |
|
273 | + $input=&$_POST; |
|
274 | 274 | break; |
275 | 275 | case 'put': |
276 | 276 | if (is_null($_PUT)) { |
277 | 277 | parse_str(file_get_contents('php://input'), $_PUT); |
278 | 278 | } |
279 | - $input = $_PUT; |
|
279 | + $input=$_PUT; |
|
280 | 280 | break; |
281 | 281 | case 'param': |
282 | 282 | switch ($_SERVER['REQUEST_METHOD']) { |
283 | 283 | case 'POST': |
284 | - $input = $_POST; |
|
284 | + $input=$_POST; |
|
285 | 285 | break; |
286 | 286 | case 'PUT': |
287 | 287 | if (is_null($_PUT)) { |
288 | 288 | parse_str(file_get_contents('php://input'), $_PUT); |
289 | 289 | } |
290 | - $input = $_PUT; |
|
290 | + $input=$_PUT; |
|
291 | 291 | break; |
292 | 292 | default: |
293 | - $input = $_GET; |
|
293 | + $input=$_GET; |
|
294 | 294 | } |
295 | 295 | break; |
296 | 296 | case 'path': |
297 | - $input = array(); |
|
297 | + $input=array(); |
|
298 | 298 | if (!empty($_SERVER['PATH_INFO'])) { |
299 | - $depr = C('URL_PATHINFO_DEPR'); |
|
300 | - $input = explode($depr, trim($_SERVER['PATH_INFO'], $depr)); |
|
299 | + $depr=C('URL_PATHINFO_DEPR'); |
|
300 | + $input=explode($depr, trim($_SERVER['PATH_INFO'], $depr)); |
|
301 | 301 | } |
302 | 302 | break; |
303 | 303 | case 'request': |
304 | - $input = &$_REQUEST; |
|
304 | + $input=&$_REQUEST; |
|
305 | 305 | break; |
306 | 306 | case 'session': |
307 | - $input = &$_SESSION; |
|
307 | + $input=&$_SESSION; |
|
308 | 308 | break; |
309 | 309 | case 'cookie': |
310 | - $input = &$_COOKIE; |
|
310 | + $input=&$_COOKIE; |
|
311 | 311 | break; |
312 | 312 | case 'server': |
313 | - $input = &$_SERVER; |
|
313 | + $input=&$_SERVER; |
|
314 | 314 | break; |
315 | 315 | case 'globals': |
316 | - $input = &$GLOBALS; |
|
316 | + $input=&$GLOBALS; |
|
317 | 317 | break; |
318 | 318 | case 'data': |
319 | - $input = &$datas; |
|
319 | + $input=&$datas; |
|
320 | 320 | break; |
321 | 321 | default: |
322 | 322 | return null; |
323 | 323 | } |
324 | 324 | if ('' == $name) { |
325 | 325 | // 获取全部变量 |
326 | - $data = $input; |
|
327 | - $filters = isset($filter) ? $filter : 'htmlspecialchars'; |
|
326 | + $data=$input; |
|
327 | + $filters=isset($filter) ? $filter : 'htmlspecialchars'; |
|
328 | 328 | if ($filters) { |
329 | 329 | if (is_string($filters)) { |
330 | - $filters = explode(',', $filters); |
|
330 | + $filters=explode(',', $filters); |
|
331 | 331 | } |
332 | - else if (is_array($filters)){ |
|
332 | + else if (is_array($filters)) { |
|
333 | 333 | foreach ($filters as $filter) { |
334 | - $data = array_map_recursive($filter, $data); // 参数过滤 |
|
334 | + $data=array_map_recursive($filter, $data); // 参数过滤 |
|
335 | 335 | } |
336 | - }else{ |
|
336 | + } else { |
|
337 | 337 | throw new \RuntimeException('$filters must be an array or string.'); |
338 | 338 | } |
339 | 339 | } |
340 | 340 | } elseif (isset($input[$name])) { |
341 | 341 | // 取值操作 |
342 | - $data = $input[$name]; |
|
343 | - $filters = isset($filter) ? $filter : 'htmlspecialchars'; |
|
342 | + $data=$input[$name]; |
|
343 | + $filters=isset($filter) ? $filter : 'htmlspecialchars'; |
|
344 | 344 | if ($filters) { |
345 | 345 | if (is_string($filters)) { |
346 | 346 | if (0 === strpos($filters, '/')) { |
@@ -349,19 +349,19 @@ discard block |
||
349 | 349 | return isset($default) ? $default : null; |
350 | 350 | } |
351 | 351 | } else { |
352 | - $filters = explode(',', $filters); |
|
352 | + $filters=explode(',', $filters); |
|
353 | 353 | } |
354 | 354 | } elseif (is_int($filters)) { |
355 | - $filters = array($filters); |
|
355 | + $filters=array($filters); |
|
356 | 356 | } |
357 | 357 | |
358 | 358 | if (is_array($filters)) { |
359 | 359 | foreach ($filters as $filter) { |
360 | - $filter = trim($filter); |
|
360 | + $filter=trim($filter); |
|
361 | 361 | if (function_exists($filter)) { |
362 | - $data = is_array($data) ? array_map_recursive($filter, $data) : $filter($data); // 参数过滤 |
|
362 | + $data=is_array($data) ? array_map_recursive($filter, $data) : $filter($data); // 参数过滤 |
|
363 | 363 | } else { |
364 | - $data = filter_var($data, is_int($filter) ? $filter : filter_id($filter)); |
|
364 | + $data=filter_var($data, is_int($filter) ? $filter : filter_id($filter)); |
|
365 | 365 | if (false === $data) { |
366 | 366 | return isset($default) ? $default : null; |
367 | 367 | } |
@@ -372,34 +372,34 @@ discard block |
||
372 | 372 | if (!empty($type)) { |
373 | 373 | switch (strtolower($type)) { |
374 | 374 | case 'a': // 数组 |
375 | - $data = (array) $data; |
|
375 | + $data=(array) $data; |
|
376 | 376 | break; |
377 | 377 | case 'd': // 数字 |
378 | - $data = (int) $data; |
|
378 | + $data=(int) $data; |
|
379 | 379 | break; |
380 | 380 | case 'f': // 浮点 |
381 | - $data = (float) $data; |
|
381 | + $data=(float) $data; |
|
382 | 382 | break; |
383 | 383 | case 'b': // 布尔 |
384 | - $data = (boolean) $data; |
|
384 | + $data=(boolean) $data; |
|
385 | 385 | break; |
386 | 386 | case 's':// 字符串 |
387 | 387 | default: |
388 | - $data = (string) $data; |
|
388 | + $data=(string) $data; |
|
389 | 389 | } |
390 | 390 | } |
391 | 391 | } else { |
392 | 392 | // 变量默认值 |
393 | - $data = isset($default) ? $default : null; |
|
393 | + $data=isset($default) ? $default : null; |
|
394 | 394 | } |
395 | 395 | is_array($data) && array_walk_recursive($data, 'think_filter'); |
396 | 396 | return $data; |
397 | 397 | } |
398 | 398 | function array_map_recursive($filter, $data) |
399 | 399 | { |
400 | - $result = array(); |
|
400 | + $result=array(); |
|
401 | 401 | foreach ($data as $key => $val) { |
402 | - $result[$key] = is_array($val) |
|
402 | + $result[$key]=is_array($val) |
|
403 | 403 | ? array_map_recursive($filter, $val) |
404 | 404 | : call_user_func($filter, $val); |
405 | 405 | } |
@@ -411,18 +411,18 @@ discard block |
||
411 | 411 | |
412 | 412 | // 过滤查询特殊字符 |
413 | 413 | if (preg_match('/^(EXP|NEQ|GT|EGT|LT|ELT|OR|XOR|LIKE|NOTLIKE|NOT BETWEEN|NOTBETWEEN|BETWEEN|NOTIN|NOT IN|IN)$/i', $value)) { |
414 | - $value .= ' '; |
|
414 | + $value.=' '; |
|
415 | 415 | } |
416 | 416 | } |
417 | -function config($name=null,$value=null,$default=null){ |
|
417 | +function config($name=null, $value=null, $default=null) { |
|
418 | 418 | $config=\puck\Conf::load(); |
419 | - if ($name===null){ |
|
419 | + if ($name === null) { |
|
420 | 420 | return $config->all(); |
421 | 421 | } |
422 | - if ($value===null){ |
|
423 | - return $config->get($name,$default); |
|
422 | + if ($value === null) { |
|
423 | + return $config->get($name, $default); |
|
424 | 424 | } |
425 | - $config->set($name,$value); |
|
425 | + $config->set($name, $value); |
|
426 | 426 | } |
427 | 427 | /** |
428 | 428 | * 字符串命名风格转换 |
@@ -431,9 +431,9 @@ discard block |
||
431 | 431 | * @param integer $type 转换类型 |
432 | 432 | * @return string |
433 | 433 | */ |
434 | -function parse_name($name, $type = 0) { |
|
434 | +function parse_name($name, $type=0) { |
|
435 | 435 | if ($type) { |
436 | - return ucfirst(preg_replace_callback('/_([a-zA-Z])/', function ($match) {return strtoupper($match[1]);}, $name)); |
|
436 | + return ucfirst(preg_replace_callback('/_([a-zA-Z])/', function($match) {return strtoupper($match[1]); }, $name)); |
|
437 | 437 | } else { |
438 | 438 | return strtolower(trim(preg_replace("/[A-Z]/", "_\\0", $name), "_")); |
439 | 439 | } |
@@ -40,8 +40,7 @@ discard block |
||
40 | 40 | |
41 | 41 | if(isset($arr['status']) && $type==2){ |
42 | 42 | $ret=$arr; |
43 | - } |
|
44 | - else{ |
|
43 | + } else{ |
|
45 | 44 | $ret['status'] = $type; |
46 | 45 | $ret['data'] = $arr; |
47 | 46 | } |
@@ -156,7 +155,7 @@ discard block |
||
156 | 155 | // 重新生成id |
157 | 156 | session_regenerate_id(); |
158 | 157 | } |
159 | - }else { |
|
158 | + } else { |
|
160 | 159 | if (strpos($name, '.')) { |
161 | 160 | list($name1, $name2) = explode('.', $name); |
162 | 161 | return isset($_SESSION[$name1][$name2]) ? $_SESSION[$name1][$name2] : null; |
@@ -328,12 +327,11 @@ discard block |
||
328 | 327 | if ($filters) { |
329 | 328 | if (is_string($filters)) { |
330 | 329 | $filters = explode(',', $filters); |
331 | - } |
|
332 | - else if (is_array($filters)){ |
|
330 | + } else if (is_array($filters)){ |
|
333 | 331 | foreach ($filters as $filter) { |
334 | 332 | $data = array_map_recursive($filter, $data); // 参数过滤 |
335 | 333 | } |
336 | - }else{ |
|
334 | + } else{ |
|
337 | 335 | throw new \RuntimeException('$filters must be an array or string.'); |
338 | 336 | } |
339 | 337 | } |