当前位置: 首页>>代码示例>>PHP>>正文


PHP router::get_url方法代码示例

本文整理汇总了PHP中router::get_url方法的典型用法代码示例。如果您正苦于以下问题:PHP router::get_url方法的具体用法?PHP router::get_url怎么用?PHP router::get_url使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在router的用法示例。


在下文中一共展示了router::get_url方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: __construct

 public function __construct()
 {
     // check php version to upper than 5.6
     if (version_compare(phpversion(), '5.6', '<')) {
         die("<p>For using Saloos you must update php version to 5.6 or higher!</p>");
     }
     /**
      * If DEBUG is TRUE you can see the full error description, If set to FALSE show userfriendly messages
      * change it from project config.php
      */
     if (!defined('DEBUG')) {
         if (\lib\utility\option::get('config', 'meta', 'debug')) {
             define('DEBUG', true);
         } elseif (Tld === 'dev') {
             define('DEBUG', true);
         } else {
             define('DEBUG', false);
         }
     }
     if (DEBUG) {
         ini_set('display_errors', 'On');
         ini_set('display_startup_errors', 'On');
         ini_set('error_reporting', 'E_ALL | E_STRICT');
         ini_set('track_errors', 'On');
         ini_set('display_errors', 1);
         error_reporting(E_ALL);
         //Setting for the PHP Error Handler
         // set_error_handler('\lib\error::myErrorHandler');
         //Setting for the PHP Exceptions Error Handler
         // set_exception_handler('\lib\error::myErrorHandler');
         //Setting for the PHP Fatal Error
         // register_shutdown_function('\lib\error::myErrorHandler');
     } else {
         error_reporting(0);
         ini_set('display_errors', 0);
     }
     /**
      * A session is a way to store information (in variables) to be used across multiple pages.
      * Unlike a cookie, the information is not stored on the users computer.
      * access to session with this code: $_SESSION["test"]
      */
     if (is_string(Domain)) {
         session_name(Domain);
     }
     // set session cookie params
     session_set_cookie_params(0, '/', '.' . Service, false, true);
     // if user enable saving sessions in db
     // temporary disable because not work properly
     if (false) {
         $handler = new \lib\utility\sessionHandler();
         session_set_save_handler($handler, true);
     }
     // start sessions
     session_start();
     /**
      * in coming soon period show public_html/pages/coming/ folder
      * developer must set get parameter like site.com/dev=anyvalue
      * for disable this attribute turn off it from config.php in project root
      */
     if (\lib\utility\option::get('config', 'meta', 'coming') || defined('CommingSoon')) {
         // if user set dev in get, show the site
         if (isset($_GET['dev'])) {
             setcookie('preview', 'yes', time() + 30 * 24 * 60 * 60, '/', '.' . Service);
         } elseif (router::get_url(0) === 'saloos_tg') {
             // allow telegram to commiunate on coming soon
         } elseif (!isset($_COOKIE["preview"])) {
             header('Location: http://' . AccountService . MainTld . '/static/page/coming/', true, 302);
             exit;
         }
     }
     // use saloos php gettext function
     require_once lib . 'utility/gettext/gettext.inc';
     // change header and remove php from it
     header("X-Powered-By: Saloos!");
 }
开发者ID:Ermile,项目名称:Saloos,代码行数:75,代码来源:define.php

示例2: check_protocol

 /**
  * check current protocol and if needed redirect to another!
  * @return [type] [description]
  */
 private static function check_protocol()
 {
     // create new url for protocol checker
     $newUrl = "";
     $currentPath = $_SERVER['REQUEST_URI'];
     $mainSite = \lib\utility\option::get('config', 'meta', 'redirectURL');
     // if redirect to main site is enable and all thing is okay
     // then redirect to the target url
     if (\lib\utility\option::get('config', 'meta', 'multiDomain') && \lib\utility\option::get('config', 'meta', 'redirectToMain') && $mainSite && Tld !== 'dev' && parse_url($mainSite, PHP_URL_HOST) != \lib\router::get_root_domain()) {
         // as soon as posible we create language detector library
         switch (Tld) {
             case 'ir':
                 $newUrl = $mainSite . "/fa";
                 break;
             default:
                 break;
         }
     } elseif ($currentPath !== '/' && rtrim($currentPath, '/') !== $currentPath) {
         $newUrl = $mainSite . rtrim($currentPath, '/');
     } else {
         // if want to force using https then redirect to https of current url
         if (\lib\utility\option::get('config', 'meta', 'https')) {
             if (Protocol === 'http') {
                 $newUrl = 'https://';
             }
         } elseif (Protocol === 'https') {
             $newUrl = 'http://';
         }
         if ($newUrl) {
             $newUrl .= router::get_root_domain() . '/' . router::get_url();
         }
     }
     // var_dump($newUrl);exit();
     // if newUrl is exist and we must to redirect
     // then complete url and redirect to this address
     if ($newUrl && !\lib\utility::get('force')) {
         // redirect to best protocol because we want it!
         $redirector = new \lib\redirector($newUrl);
         $redirector->redirect();
     }
 }
开发者ID:Ermile,项目名称:Saloos,代码行数:45,代码来源:router.php

示例3: __construct

 public function __construct()
 {
     self::$repository = repository;
     $path = preg_replace("/^\\.\\//", "/", '/');
     $clean_url = $_SERVER['REQUEST_URI'];
     if (preg_match("#0x#", $clean_url)) {
         // var_dump("error");
     }
     $clean_url = preg_replace("#0x#Ui", "", $clean_url);
     $clean_url = preg_replace("#^https?://{$_SERVER['HTTP_HOST']}\\/#", '', $clean_url);
     $clean_url = preg_replace("#^{$path}#", '', $clean_url);
     $clean_url = urldecode($clean_url);
     preg_match("/^([^?]*)(\\?.*)?\$/", $clean_url, $url);
     self::$real_url_string = self::$url_string = $url[1];
     self::$real_url_array = self::$url_array = preg_split("[\\/]", preg_replace("/^\\/|\\/\$/", '', $url[1]), -1, PREG_SPLIT_NO_EMPTY);
     // HTTP_HOST is not secure and attacker can change it
     $domain = $_SERVER['HTTP_HOST'];
     self::$domain = preg_split("[\\.]", $domain);
     self::$sub_domain = self::$domain;
     array_pop(self::$sub_domain);
     array_pop(self::$sub_domain);
     if (isset(self::$real_url_array[0]) && self::$real_url_array[0] == 'home' || isset(self::$real_url_array[1]) && self::$real_url_array[1] == 'home') {
         \lib\error::page("home");
     }
     /**
      * set default language to storage for next use
      */
     if (defined('DefaultLanguage')) {
         router::set_storage('defaultLanguage', DefaultLanguage);
     } else {
         router::set_storage('defaultLanguage', 'en_US');
     }
     /**
      * user want control panel or CMS
      */
     if (defined('CMS') && constant('CMS')) {
         $myCP = constant('CMS') === true ? 'cp' : constant('CMS');
         router::set_storage('CMS', $myCP);
     } elseif (defined('ControlPanel') && constant('ControlPanel')) {
         $myCP = constant('ControlPanel') === true ? 'cp' : constant('ControlPanel');
         router::set_storage('CMS', $myCP);
     } else {
         router::set_storage('CMS', false);
     }
     /**
      * before router
      */
     if (self::$auto_repository) {
         // first get subdomain and if not exist get first url part as mysub
         $mysub = router::get_sub_domain();
         if (!$mysub) {
             $mysub = router::get_url(0);
             router::$sub_is_fake = true;
             router::set_storage('language', router::get_storage('defaultLanguage'));
         }
         if ($mysub) {
             // automatically set repository if folder of it exist
             $myaddons = array();
             $mysub_real = $mysub;
             $myloc = null;
             $mysub_valid = null;
             // check for account with specefic name
             if (defined('Account') && constant('Account')) {
                 $mykey = constant('Account') === true ? 'account' : constant('Account');
                 $myaddons[$mykey] = 'account';
             }
             // check for account with specefic name
             if (\lib\router::get_storage('CMS')) {
                 $myaddons[\lib\router::get_storage('CMS')] = 'cp';
             }
             // check this sub is exist in our data or not
             if (array_key_exists($mysub, $myaddons)) {
                 $mysub = $myaddons[$mysub];
                 $mysub_valid = true;
             }
             // set repository name
             $myrep = 'content_' . $mysub;
             // check content_aaa folder is exist in project or saloos addons folder
             if (is_dir(root . $myrep)) {
                 $myloc = false;
             } elseif ($mysub_valid && is_dir(addons . $myrep)) {
                 $myloc = addons;
             }
             // if folder exist
             if (!is_null($myloc)) {
                 // if url is fake, show it like subdomain and remove from url
                 if (router::$sub_is_fake) {
                     router::remove_url($mysub_real);
                     router::set_sub_domain($mysub_real);
                 }
                 // set repository to this folder
                 $myparam = array($myrep);
                 if ($myloc) {
                     array_push($myparam, $myloc);
                 }
                 // call function and pass param value to it
                 router::set_repository(...$myparam);
             }
             // if subdomain is set, change current lang to it, except for default language
             if (defined('LangList') && constant('LangList')) {
//.........这里部分代码省略.........
开发者ID:evazzadeh,项目名称:Saloos,代码行数:101,代码来源:router.php


注:本文中的router::get_url方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。