72 lines
1.7 KiB
PHP
72 lines
1.7 KiB
PHP
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
||
|
/**
|
||
|
* CodeIgniter
|
||
|
*
|
||
|
* An open source application development framework for PHP 5.1.6 or newer
|
||
|
*
|
||
|
* @package CodeIgniter
|
||
|
* @author ExpressionEngine Dev Team
|
||
|
* @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
|
||
|
* @license http://codeigniter.com/user_guide/license.html
|
||
|
* @link http://codeigniter.com
|
||
|
* @since Version 1.0
|
||
|
* @filesource
|
||
|
*/
|
||
|
|
||
|
// ------------------------------------------------------------------------
|
||
|
|
||
|
/**
|
||
|
* CodeIgniter Path Helpers
|
||
|
*
|
||
|
* @package CodeIgniter
|
||
|
* @subpackage Helpers
|
||
|
* @category Helpers
|
||
|
* @author ExpressionEngine Dev Team
|
||
|
* @link http://codeigniter.com/user_guide/helpers/xml_helper.html
|
||
|
*/
|
||
|
|
||
|
// ------------------------------------------------------------------------
|
||
|
|
||
|
/**
|
||
|
* Set Realpath
|
||
|
*
|
||
|
* @access public
|
||
|
* @param string
|
||
|
* @param bool checks to see if the path exists
|
||
|
* @return string
|
||
|
*/
|
||
|
if ( ! function_exists('set_realpath'))
|
||
|
{
|
||
|
function set_realpath($path, $check_existance = FALSE)
|
||
|
{
|
||
|
// Security check to make sure the path is NOT a URL. No remote file inclusion!
|
||
|
if (preg_match("#^(http:\/\/|https:\/\/|www\.|ftp|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})#i", $path))
|
||
|
{
|
||
|
show_error('The path you submitted must be a local server path, not a URL');
|
||
|
}
|
||
|
|
||
|
// Resolve the path
|
||
|
if (function_exists('realpath') AND @realpath($path) !== FALSE)
|
||
|
{
|
||
|
$path = realpath($path).'/';
|
||
|
}
|
||
|
|
||
|
// Add a trailing slash
|
||
|
$path = preg_replace("#([^/])/*$#", "\\1/", $path);
|
||
|
|
||
|
// Make sure the path exists
|
||
|
if ($check_existance == TRUE)
|
||
|
{
|
||
|
if ( ! is_dir($path))
|
||
|
{
|
||
|
show_error('Not a valid path: '.$path);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return $path;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
/* End of file path_helper.php */
|
||
|
/* Location: ./system/helpers/path_helper.php */
|