在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1 <?php 2 // +---------------------------------------------------------------------- 3 // | 方维购物分享网站系统 (Build on ThinkPHP) 4 // +---------------------------------------------------------------------- 5 // | Copyright (c) 2011 http://fanwe.com All rights reserved. 6 // +---------------------------------------------------------------------- 7 8 /** 9 * global.func 10 * 11 * 公共函数 12 * 13 * @package function 14 * @author awfigq <[email protected]> 15 */ 16 function getPhpSelf() 17 { 18 $php_self = ''; 19 $script_name = basename($_SERVER['SCRIPT_FILENAME']); 20 if(basename($_SERVER['SCRIPT_NAME']) === $script_name) 21 $php_self = $_SERVER['SCRIPT_NAME']; 22 else if(basename($_SERVER['PHP_SELF']) === $script_name) 23 $php_self = $_SERVER['PHP_SELF']; 24 else if(isset($_SERVER['ORIG_SCRIPT_NAME']) && basename($_SERVER['ORIG_SCRIPT_NAME']) === $script_name) 25 $php_self = $_SERVER['ORIG_SCRIPT_NAME']; 26 else if(($pos = strpos($_SERVER['PHP_SELF'],'/'.$script_name)) !== false) 27 $php_self = substr($_SERVER['SCRIPT_NAME'],0,$pos).'/'.$script_name; 28 else if(isset($_SERVER['DOCUMENT_ROOT']) && strpos($_SERVER['SCRIPT_FILENAME'],$_SERVER['DOCUMENT_ROOT']) === 0) 29 $php_self = str_replace('\\','/',str_replace($_SERVER['DOCUMENT_ROOT'],'',$_SERVER['SCRIPT_FILENAME'])); 30 else 31 return false; 32 return $php_self; 33 } 34 35 /** 36 * 获取引用文件路径 37 * @param string $file_name 文件名称 38 * @param string $folder 所在目录(默认为空) 39 * @return string 40 */ 41 function fimport($file_name, $folder = '') 42 { 43 global $_FANWE; 44 static $sufix = array( 45 'module'=>'.module', 46 'service'=>'.service', 47 'class'=>'.class', 48 'function' => '.func', 49 'include' => '.inc', 50 'language' => '.lang', 51 'cache' => '.cache', 52 'dynamic'=>'.dynamic', 53 ); 54 55 $file_name = strtolower($file_name); 56 $file_path = FANWE_ROOT.'./core'; 57 if(strstr($file_name, '/')) 58 { 59 list($pre, $name) = explode('/', $file_name); 60 61 $insert = ''; 62 if($pre == 'language') 63 $insert = $_FANWE['config']['default_lang'].'/'; 64 65 return "{$file_path}/{$pre}/".$insert.(empty($folder) ? "" : $folder . "/")."{$name}".$sufix[$pre].".php"; 66 } 67 else 68 { 69 return "{$file_path}/".(empty($folder) ? "" : $folder . "/")."{$file_name}.php"; 70 } 71 } 72 73 /** 74 * 获取页面显示操作类 75 * @param string $module 类名 76 * @return object 77 */ 78 function FM($module) 79 { 80 static $modules = array(); 81 if($modules[$module] === NULL) 82 { 83 require fimport("module/".strtolower($module)); 84 $m = ucfirst($module)."Module"; 85 $modules[$module] = new $m(); 86 unset($m); 87 } 88 return $modules[$module]; 89 } 90 91 /** 92 * 获取服务类 93 * @param string $service 类名 94 * @return object 95 */ 96 function FS($service) 97 { 98 static $services = array(); 99 if($services[$service] === NULL) 100 { 101 require_once fimport("service/".strtolower($service)); 102 $s = ucfirst($service)."Service"; 103 $services[$service] = new $s(); 104 unset($s); 105 } 106 107 return $services[$service]; 108 } 109 110 /** 111 * 页面路径处理 112 * @param string $type 页面 113 * @param array $args 参数 114 * @return string 115 */ 116 function FU($type,$args = array(),$is_full = false) 117 { 118 global $_FANWE; 119 static $is_rewrite = NULL,$site_url = NULL,$url_lists = array(),$url_flists = array(),$seo_modules = NULL; 120 121 if ($is_rewrite === NULL) 122 $is_rewrite = intval($_FANWE['setting']['url_model']); 123 124 if ($site_url === NULL) 125 $site_url = $_FANWE['site_root']; 126 127 if ($seo_modules === NULL) 128 { 129 if(!isset($_FANWE['cache']['seos'])) 130 Cache::getInstance()->loadCache('seos'); 131 132 $seo_modules = $_FANWE['cache']['seos']; 133 } 134 135 $depr = '/'; 136 137 $url = $site_url; 138 if($is_full) 139 { 140 $url = $_FANWE['site_url']; 141 $site_url = $_FANWE['site_url']; 142 } 143 144 $apps = explode('/',$type); 145 $module = $apps[0]; 146 $action = isset($apps[1]) ? $apps[1] : 'index'; 147 $type = $module.'/'.$action; 148 149 $url_key = $type.'_'.md5(http_build_query($args)); 150 if($is_full) 151 { 152 if(isset($url_flists[$url_key])) 153 return $url_flists[$url_key]; 154 } 155 else 156 { 157 if(isset($url_lists[$url_key])) 158 return $url_lists[$url_key]; 159 } 160 161 $query = ''; 162 if($is_rewrite == 0 || $module == 'search') 163 { 164 $query = http_build_query($args); 165 if(!empty($query)) 166 $query = '&'.$query; 167 } 168 169 $is_url_app = true; 170 if($is_rewrite == 0 || $module == 'search') 171 { 172 $url .= $module.'.php?action='.$action.$query; 173 } 174 else 175 { 176 $params = array(); 177 switch($module) 178 { 179 case 'index': 180 $is_url_app = false; 181 $url = $site_url; 182 break; 183 184 case 'book': 185 $params = array('cate' => '','gid' => '','sid' => '','price'=>'','color'=>'','sort'=>'','tag' => '','page' => 0); 186 $search = array('cate/','gid/','sid/','price/','color/','sort/','tag/','page/'); 187 $replace = array('','g','s','p','c','','',''); 188 if($action == 'shopping') 189 $action = $seo_modules[$module][$action]['action']; 190 191 $module = $seo_modules[$module]['module']; 192 break; 193 194 case 'note': 195 $is_url_app = false; 196 $module = $seo_modules[$module]['module']; 197 if($action == 'index') 198 $url = $site_url.$module.$depr.$args['sid']; 199 else 200 $url = $site_url.$module.$depr.$args['sid'].$depr.$action.$depr.$args['id']; 201 202 if(isset($args['page']) && $args['page'] != '0') 203 $url.= $depr.$args['page']; 204 break; 205 206 case 'album': 207 switch($action) 208 { 209 case 'index': 210 $params = array('sort'=>'','page' => 0); 211 $search = array('/index','sort/','page/'); 212 $replace = array('','',''); 213 break; 214 215 case 'category': 216 $action = $seo_modules[$module][$action]['action']; 217 $params = array('id'=>0,'sort'=>'','page' => 0); 218 $search = array('id/','sort/','page/'); 219 $replace = array('c','',''); 220 break; 221 222 case 'show': 223 $action = $seo_modules[$module][$action]['action']; 224 $args['aid'] = $args['id']; 225 unset($args['id']); 226 $params = array('aid'=>0,'sid'=>0,'type' => 0,'page' => 0); 227 $search = array('aid/','sid/','type/','page/'); 228 $replace = array('a','s','t',''); 229 break; 230 231 case 'edit': 232 $params = array('id'=>0); 233 $search = array('id/'); 234 $replace = array(''); 235 break; 236 } 237 $module = $seo_modules[$module]['module']; 238 break; 239 240 case 'look': 241 case 'dapei': 242 $params = array('type' => '','sort' => '','page' => 0); 243 $search = array('/index','/type','/sort','/page'); 244 $replace = array('','','',''); 245 $module = $seo_modules[$module]['module']; 246 break; 247 248 case 'group': 249 switch($action) 250 { 251 case 'index': 252 $search = array('/index'); 253 $replace = array(''); 254 break; 255 256 case 'detail': 257 $params = array('type' => '','fid' => 0,'sort' => '','page' => 0); 258 $search = array('detail/','type/','fid/','sort/','page/'); 259 $replace = array('','','','',''); 260 break; 261 262 case 'users': 263 case 'apply': 264 $params = array('fid' => 0,'page' => 0); 265 $search = array('fid/','page/'); 266 $replace = array('',''); 267 break; 268 269 case "edit": 270 $params = array('fid' => 0); 271 $search = array('fid/'); 272 $replace = array(''); 273 break; 274 } 275 $module = $seo_modules[$module]['module']; 276 break; 277 278 case 'daren': 279 switch($action) 280 { 281 case 'index': 282 $search = array('/index'); 283 $replace = array(''); 284 break; 285 286 case 'cate': 287 $params = array('id' => 0,'page' => 0); 288 $search = array('cate/','id/','page/'); 289 $replace = array('','',''); 290 break; 291 } 292 $module = $seo_modules[$module]['module']; 293 break; 294 295 case 'shop': 296 switch($action) 297 { 298 case 'index': 299 if(empty($args['cid'])) 300 { 301 unset($args['cid']); 302 $search = array('/index','/page'); 303 $replace = array('',''); 304 } 305 else 306 { 307 $params = array('cid' => 0,'page' => 0); 308 $search = array('index/','cid/','page/'); 309 $replace = array('','c',''); 310 } 311 break; 312 313 case 'show': 314 $params = array('id' => 0,'page' => 0); 315 $search = array('id/','page/'); 316 $replace = array('s',''); 317 $action = $seo_modules[$module][$action]['action']; 318 break; 319 } 320 $module = $seo_modules[$module]['module']; 321 322 break; 323 324 325 case 'topic': 326 switch($action) 327 { 328 case 'detail': 329 $params = array('tid' => 0,'page' => 0); 330 $search = array('tid/','page/'); 331 $replace = array('',''); 332 $action = $seo_modules[$module][$action]['action']; 333 break; 334 335 case 'create': 336 $params = array('fid' => 0); 337 $search = array('fid/'); 338 $replace = array(''); 339 break; |
2022-07-29
2022-08-30
2022-08-17
2022-11-06
2022-08-18
请发表评论