PHP获取当前相对于域名目录的方法
本文实例讲述了PHP获取当前相对于域名目录的方法。分享给大家供大家参考。具体如下:
http://127.0.0.1/dev/classd/index.php/download
比如这个地址,我想得到红色区域的地址用于生成站内的链接,名为 baseurl。
用 $_SERVER['SCRIPT_NAME'] 就可以了, $_SERVER['SCRIPT_NAME'] 是当前正在访问的PHP文件的相对路径,只要如下稍作处理:
从$_SERVER['SCRIPT_NAME']中获取目录部分,并且替换dirname函数可能出现的反斜杠问题
$baseUrl = str_replace('\\','/',dirname($_SERVER['SCRIPT_NAME']));
保证为空时能返回可以使用的正常值
$baseUrl = empty($baseUrl) ? '/' : '/'.trim($baseUrl,'/').'/';
这样就可以正常获取到 /dev/classd/ 这部分的目录地址了。
顺便看了一下 Zend Framework 的 baseUrl() 函数,结果一看那么一大堆代码就没再继续看了,我就想不通同样的功能他用了一大堆一大堆的代码,从$_SERVER里获取了一堆,然后中间经过两三个类,四五个方法才最终被我们直接调用,除了中间有三行是获取当前的PHP文件以外,其它都是没用和无谓的处理,ZF本身运行的已经够慢的了,这是什么一个意思呢。感兴趣的朋友可以研究一下。
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
解析PHP获取当前网址及域名的实现代码
复制代码 代码如下: <?//获取当前的域名:echo $_SERVER['SERVER_NAME'];//获取来源网址,即点击来到本页的上页网址echo $_SERVER["HTTP_REFERER"];$_SERVER['REQUEST_URI'];//获取当前域名的后缀$_SERVER['HTTP_HOST'];//获取当前域名dirname(__FILE__);//获取当前文件的物理路径dirname(__FILE__)."/../";//获取当前文件
-
php采用curl访问域名返回405 method not allowed提示的解决方法
/** * http测试 * 注:PHP版本5.2以上才支持CURL_IPRESOLVE_V4 * @param $url 网站域名 * @param $type 网站访问协议 * @param $ipresolve 解析方式 */ public function web_http($url,$type,$ipresolve) { //设置Header头 $header[] = "Accept: application/json"; $header[] = "Accept-E
-
php获取根域名方法汇总
本文实例汇总了php获取根域名方法,分享给大家供大家参考.具体实现方法如下: 如果你只简单获取当前访问你页面的域名,我们只需要使用php中的函数HTTP_HOST就可以搞定了,如果是提取url根域名是需要正则的,下面就来看看几个具体实例. 如果是获取当前域名是非常的简单的: 复制代码 代码如下: <?php //获取当前的域名: echo $_SERVER['SERVER_NAME']; //获取来源网址,即点击来到本页的上页网址 echo $_SERVER["HTTP_REFERER&q
-
php中取得URL的根域名的代码
复制代码 代码如下: <?php /** * 取得根域名 * * @author lonely * @create 2011-3-11 * @version 0.1 * @lastupdate lonely * @package Sl */ class Sl_RootDomain{ private static $self; private $domain=null; private $host=null; private $state_domain; private $top_domain;
-
PHP自定义函数获取URL中一级域名的方法
本文实例讲述了PHP自定义函数获取URL中一级域名的方法.分享给大家供大家参考,具体如下: <?php /* * Created on 2016-8-23 */ function regular_domain($domain) { if (substr ( $domain, 0, 7 ) == 'http://') { $domain = substr ( $domain, 7 ); } if (strpos ( $domain, '/' ) !== false) { $domain = sub
-
PHP实现获取域名的方法小结
本文实例总结了PHP实现获取域名的方法.分享给大家供大家参考.具体实现方法如下: 方法一(用 系统变量) 复制代码 代码如下: //缺点不使用传递过来的地址和不支持系统变量的主机 echo $_SERVER['HTTP_HOST']; 方法二(用自带函数) 复制代码 代码如下: $url = 'http://www.jb51.net/index.php?referer=jb51.net'; $arr_url = parse_url($url); echo $arr_url['host']; 方法
-
php生成短域名函数
php生成短域名函数 public function createRandCode($string) { $code = ''; $hex_code = '1qaz2wsx3edc4rfv5t-gb6yhn7ujm8ik9ol0p_'; $now = microtime(true) * 10000; $strlen = strlen($hex_code); $hash_code = hash('sha256', $string); // 这里会为编码定义一个随机的长度,长度取决于step $st
-
利用PHP实现短域名互转
复制代码 代码如下: /** * 短域名生成&解析类 */ class Build_URL { private $mem; private $base_url = 'http://xxx.com/'; public function __construct() { $mem_conf = array( array( 'host' => '192.168.10.90',
-
PHP实现通过URL提取根域名
PHP根据URL提取根域名,个人工作中用到,由于网络上很多代码都不能得到正确结果就自己写了一个,欢迎大家使用并提出其中的bug. <?php #使用示例 echo getBaseDomain('http://blog.jp.goo.ne.jp/index.php')->domain;echo "\n"; echo getBaseDomain('http://51.ca/index.php')->domain;echo "\n"; echo getB
-
PHP获取网址的顶级域名函数代码
PHP获取网址的顶级域名函数 目前国际顶级域名有:com|edu|gov|int|mil|net|org|biz|info|pro|name|museum|coop|aero|xxx|idv|mobi|cc|me 地域型域名比较多,应该是每个国家地区都会有吧,有心可以去收集,不过据我了解这个域名都是2个字母构成的,它可以单独使用也可以喝国际顶级域名结合使用地域型域名如: cn 中国 tw 台湾 hk 香港 域名例子: jb51.cn baidu.com jb51.com.cn 以jb51.dom
随机推荐
- AngularJS表达式讲解及示例代码
- JavaScript Event学习第十章 一些可替换的事件对
- js querySelector() 使用方法
- iOS 实现模糊搜索的功能
- Xen虚拟机的详细迁移步骤详解
- 纯JS前端实现分页代码
- PHP4实际应用经验篇(4)
- nextSibling
- 了不起的node.js读书笔记之node的学习总结
- Varnish配置文件详解(架构师之路)
- package.json文件配置详解
- mysql修改自增长主键int类型为char类型示例
- oracle 10g 快照操作方法
- 比较简单的虚拟主机管理软件MyIIS 1.0.0
- js显示当前星期的起止日期的脚本
- jQuery 表格插件整理
- jQuery实现单击和鼠标感应事件
- 你所要知道JS(DHTML)中的一些技巧
- Spring入门实战之Profile详解
- antd组件Upload实现自己上传的实现示例