• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP的常用的公共函数_方维购物分享系统的内置函数

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
   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;
 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP入门(五)发布时间:2022-07-10
下一篇:
phpaes加解密,mcrypt_encrypt和openssl_encrypt发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap