44 lines
		
	
	
		
			994 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			994 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
/**
 | 
						|
 * Smarty read include path plugin
 | 
						|
 * 
 | 
						|
 * @package Smarty
 | 
						|
 * @subpackage PluginsInternal
 | 
						|
 * @author Monte Ohrt 
 | 
						|
 */
 | 
						|
 | 
						|
/**
 | 
						|
 * Smarty Internal Read Include Path Class
 | 
						|
 */
 | 
						|
class Smarty_Internal_Get_Include_Path {
 | 
						|
    /**
 | 
						|
     * Return full file path from PHP include_path
 | 
						|
     * 
 | 
						|
     * @param string $filepath filepath
 | 
						|
     * @return mixed full filepath or false
 | 
						|
     */
 | 
						|
    public static function getIncludePath($filepath)
 | 
						|
    {
 | 
						|
    static $_path_array = null;
 | 
						|
 | 
						|
    if(!isset($_path_array)) {
 | 
						|
        $_ini_include_path = ini_get('include_path');
 | 
						|
 | 
						|
        if(strstr($_ini_include_path,';')) {
 | 
						|
            // windows pathnames
 | 
						|
            $_path_array = explode(';',$_ini_include_path);
 | 
						|
        } else {
 | 
						|
            $_path_array = explode(':',$_ini_include_path);
 | 
						|
        }
 | 
						|
    }
 | 
						|
    foreach ($_path_array as $_include_path) {
 | 
						|
        if (file_exists($_include_path . DS . $filepath)) {
 | 
						|
            return $_include_path . DS . $filepath;
 | 
						|
        }
 | 
						|
    }
 | 
						|
    return false;
 | 
						|
    } 
 | 
						|
} 
 | 
						|
 | 
						|
?>
 |