why 发表于 2017-3-4 06:20:15

PHP的realpath(...)

  PHP的realpath(...)
  
  Author:zfive5(zidong)
Email :zfive5@yahoo.com.cn
  引子:
   昨天帮人改了一下PHP程序,在配eclipse+php(xdebug)+mysql+apache后,就陷入一步步漫长而乏味的调试中,虽然工具有些不太好用(但也对php环境9年来的进步感到兴奋),在整个调试过程中,发现自己完全让realpath(...)带入了沟里,1个多小时呀!为了这一个1小时也该写点什么出来!
  正文:
  PHP realpath() 函数
  定义和用法
realpath() 函数返回绝对路径。
   该函数删除所有符号连接(比如 '/./', '/../' 以及多余的 '/'),返回绝对路径名。
   若失败,则返回 false。比如说文件不存在的话。
  语法
    
readlink(linkpath)
  参数 描述
linkpath 必需。规定要检查的连接路径。

  说明
在 BSD 系统上,如果仅仅是 linkpath 不存在的话,PHP 并不会像其它系统那样返回 false。
  
目录结构:
  WebSite
|
|--1.php
|
|--txt11
| |--2.php

  1.php:
  <?php
require("./txt/2.php")
output "1.php 路径:".realpath("./")."<br/>";
?>
  2.php:
  <?php
output "2.php 路径:".realpath("./")."<br/>";
?>
  浏览器执行如下:
  
  http://localhost:8080/1.php
  
  
http://localhost:8080/txt/2.php

   require() 所指定引入的文件(2.php),使它变成PHP程序网页(1.php)的一部份,所以才会出现不同,个人感觉为了避免realpath 与 require 混用带来的不确定性,建议使用$_SERVE['DOCUMENT_ROOT']
   前些天,看了一本《爱上单片机》,感觉太神奇!
   今天借了两本书《WCF》和《SiliverLight》方面的书,继续......
   有两本书《高性能网站建设指南》和《高性能网站建设进阶指南》, 绝对的好书,简洁明了!
   感慨书店好多书,这个入门那个深入水分太多,每年少出几本这样的书,肯定要比一到3.12就全体出
动去种树要好的多。
   Say: Hi,GY :-)
页: [1]
查看完整版本: PHP的realpath(...)