<?php

// 获取文件名称
echo basename("/data/www/test/filesystem.php"),"\n";
// 获取目录名称
echo dirname("/data/www/test/filesystem.php"),"\n";
echo __DIR__,"\n"; // 操作一个url,获取相关信息(注意php函数的使用 // parse_url处理url足够了。。第二个可选参数是php常量,直接获取数组中的某个value
$url_info = parse_url('http://www.google.com/abc/xyz/fck.php?id=1#sharp');
var_dump($url_info);
$result = pathinfo($url_info['path']);// pathinfo()可以info出一些文件名、目录名、后缀名等信息
var_dump($result); /**
array(5) {
["scheme"]=>
string(4) "http"
["host"]=>
string(14) "www.google.com"
["path"]=>
string(16) "/abc/xyz/fck.php"
["query"]=>
string(4) "id=1"
["fragment"]=>
string(5) "sharp"
} array(4) {
["dirname"]=>
string(8) "/abc/xyz"
["basename"]=>
string(7) "fck.php"
["extension"]=>
string(3) "php"
["filename"]=>
string(3) "fck"
} **/

php中全局变量$_SERVER的一个例子:http://www.test.com/a/b/one.php?a=12#shart

Array
  (
  [USER] => nginx
  [HOME] => /var/cache/nginx
  [FCGI_ROLE] => RESPONDER
  [QUERY_STRING] => a=12
  [REQUEST_METHOD] => GET
  [CONTENT_TYPE] =>
  [CONTENT_LENGTH] =>
  [SCRIPT_NAME] => /a/b/one.php
  [REQUEST_URI] => /a/b/one.php?a=12
  [DOCUMENT_URI] => /a/b/one.php
  [DOCUMENT_ROOT] => /data/www/test
  [SERVER_PROTOCOL] => HTTP/1.1
  [GATEWAY_INTERFACE] => CGI/1.1
  [SERVER_SOFTWARE] => nginx/1.6.2
  [REMOTE_ADDR] => 192.168.80.190
  [REMOTE_PORT] => 54281
  [SERVER_ADDR] => 192.168.0.99
  [SERVER_PORT] => 80
  [SERVER_NAME] => www.test.com
  [REDIRECT_STATUS] => 200
  [SCRIPT_FILENAME] => /data/www/test/a/b/one.php
  [HTTP_HOST] => www.test.com
  [HTTP_CONNECTION] => keep-alive
  [HTTP_CACHE_CONTROL] => max-age=0
  [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
  [HTTP_UPGRADE_INSECURE_REQUESTS] => 1
  [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36
  [HTTP_ACCEPT_ENCODING] => gzip, deflate, sdch
  [HTTP_ACCEPT_LANGUAGE] => zh-CN,zh;q=0.8
  [PHP_SELF] => /a/b/one.php
  [REQUEST_TIME] => 1456887300
  )

php操作url 函数等的更多相关文章

  1. Django url()函数详解

    url()函数看起来的格式象: url(r^/account/$', views.index, name=index) ,它可以接收四个参数,分别是两个必选参数: regex . view 和两个可选 ...

  2. 信号量的操作——semop函数

    信号量的值与相应资源的使用情况有关,当它的值大于 0 时,表示当前可用的资源数的数量:当它的值小于 0 时,其绝对值表示等待使用该资源的进程个数.信号量的值仅能由 PV 操作来改变.        在 ...

  3. Delphi内存操作API函数(备查,并一一学习)

    Delphi内存操作API函数System.IsMemoryManagerSet;System.Move;System.New;System.ReallocMem;System.ReallocMemo ...

  4. dplyr 数据操作 常用函数(5)

    继续来了解dplyr中的其他有用函数 1.sample() 目的是可以从一个数据框中,随机抽取一些行,然后组成新的数据框. sample_n(tbl, size, replace = FALSE, w ...

  5. sql操作一般函数

    sql操作一般函数 函数一般语法:SELECT function(列) FROM 表 函数的基本类型是: Aggregate 合计函数:函数的操作面向一系列的值,并返回一个单一的值. Scalar 函 ...

  6. mysql3 - 常规数据检索、常见操作与函数

    一.常规数据检索 二.常见操作与函数

  7. php中文件操作常用函数有哪些

    php中文件操作常用函数有哪些 一.总结 一句话总结:读写文件函数 判断文件或者目录是否存在函数 创建目录函数 file_exists() mkdir() file_get_content() fil ...

  8. python 文件操作: 文件操作的函数, 模式及常用操作.

    1.文件操作的函数: open("文件名(路径)", mode = '模式', encoding = "字符集") 2.模式: r , w , a , r+ , ...

  9. go语言之进阶篇字符串操作常用函数介绍

    下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr st ...

随机推荐

  1. sublime3 常用快捷键

    轻量级编辑器,一直用的sublime text3 , 可以根据自己喜好安装喜欢的风格插件,根据工作需求安装代码处理插件. 下一章将推荐我常用的一些风格与代码插件 这里记录一些sublime 常用的快捷 ...

  2. Intellij Idea出现 unable to establish loopback connection

    项目一运行就出现这个情况,好几次了,最后发现只要防火墙关闭,项目就可以运行成功.错误提示:“C:\Program Files\Java\jdk1.8.020\bin\java” -Xmx700m -D ...

  3. 安装nvm管理不同的node版本

    在工作或者学习中,偶尔会遇到需要切换不同node版本的需求,幸好有神器nvm可以帮我们解决问题.下面我们就来讲解如何在window系统上安装nvm!

  4. ArcGIS 中取出面上最大的Z值的坐标点

    def MaxZ(shape):        line = shape.getPart(0)     pnt = line.next()     maxValue = float("-in ...

  5. mvp在flutter中的应用

    mvp模式的优点mvp模式将视图.业务逻辑.数据模型隔离,使用mvp模式,能使复杂的业务逻辑变得更加清晰,使代码更具有灵活性和扩展性,正是这些优点,使mvp模式广泛应用于原生开发中. flutter使 ...

  6. 关于DAL层使用静态方法,并在WEB层直接调用的问题

    同样的疑惑,记录一下吧: http://bbs.csdn.net/topics/360204198 DAL静不静态看connection等关键资源是否静态 比如下面的代码,就算静态也没事 public ...

  7. AndroidStudio 3.0升级之compile、implementation简要说明

    1.现象 androidStudio 升级至3.0后 之前引用库所使用的complie默认变成implementation 如以下: 3.0之前 compile 'io.reactivex.rxjav ...

  8. Java虚拟机(二)对象的创建与OOP-Klass模型

    前言 在前一篇文章中我们学习了Java虚拟机的结构原理与运行时数据区域,那么我们大概知道了Java虚拟机的内存的概况,那么内存中的数据是如何创建和访问的呢?这篇文章会给你答案. 1.对象的创建 对象的 ...

  9. Android--用JS去控制WebView显示的字体的大小

    <script type="text/javascript"> function changeFontSize(size) { var tfs = '120%'; va ...

  10. 什么是 Azure 中的虚拟机规模集?

    虚拟机规模集是一种 Azure 计算资源,可用于部署和管理一组相同的 VM. 由于所有 VM 的配置都相同,因此无需对 VM 进行任何预先配置. 这样就可以更方便地构建面向大型计算.大数据.容器化工作 ...