php 非常有用的高級函數PATH_SEPARATOR常量和set_include_path


zendframework的示例index.php里有這樣一句

  set_include_path('.' . PATH_SEPARATOR . '../library/'. PATH_SEPARATOR . './application/models/'. PATH_SEPARATOR . './application/lib/'. PATH_SEPARATOR . get_include_path()); 

不知道 PATH_SEPARATOR是什么,其實就是一個常量

直接echo就知道它的值了,在linux上是一個":"號,WIN上是一個";"號

set_include_path就是設置php的包含文件路徑,相當是操作系統的環境變量

  <?php// Works as of PHP 4.3.0 set_include_path('/inc'); // Works in all PHP versions ini_set('include_path', '/inc'); ?> 

關於set_include_path的問題,在win下,當你要include多個路徑的話,你要用";"隔開,但在linux下就使用":"隔開的。

所以上面的zf的代碼真是絕配.
get_include_path取得當前已有的環境變量

定義和用法

pathinfo() 函數以數組的形式返回文件路徑的信息。

語法

pathinfo(path,options)
參數 描述
path 必需。規定要檢查的路徑。
process_sections

可選。規定要返回的數組元素。默認是 all。

可能的值:

  • PATHINFO_DIRNAME - 只返回 dirname
  • PATHINFO_BASENAME - 只返回 basename
  • PATHINFO_EXTENSION - 只返回 extension

說明

pathinfo() 返回一個關聯數組包含有 path 的信息。

包括以下的數組元素:

  • [dirname]
  • [basename]
  • [extension]

提示和注釋

注釋:如果不是要求取得所有單元,則 pathinfo() 函數返回字符串。

例子

例子 1

<?php
print_r(pathinfo("/testweb/test.txt"));
?>

輸出:

Array
(
[dirname] => /testweb
[basename] => test.txt
[extension] => txt
)

例子 2

<?php
print_r(pathinfo("/testweb/test.txt",PATHINFO_BASENAME));
?>

輸出:

test.txt

 DIRECTORY_SEPARATOR   window 下面

說明

 
路徑分隔符
windows
\ or /
linux
/

 

function __autoload($classname){

  if(preg_match('/\\\\/',$classname)){

    $path = str_repace('\\',DIRECTORY_SEPARATOR,$classname);

      }else{

       $path = str_replace('_',DIRECTORY_SEPARATOR,$classname);

     }

   require_once("$path.php");

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM