Liste de tous les membres
Description détaillée
Définition à la ligne 25 du fichier path.php.
Documentation des fonctions membres
static JPath::canChmod |
( |
|
$path | ) |
|
|
static |
Checks if a path's permissions can be changed.
- Paramètres:
-
string | $path | Path to check. |
- Renvoie:
- boolean True if path can have mode changed.
- Depuis:
- 11.1
Définition à la ligne 36 du fichier path.php.
{
$perms = fileperms($path);
if ($perms !== false)
{
if (@chmod($path, $perms ^ 0001))
{
@chmod($path, $perms);
return true;
}
}
return false;
}
static JPath::check |
( |
|
$path | ) |
|
|
static |
Checks for snooping outside of the file system root.
- Paramètres:
-
string | $path | A file system path to check. |
- Renvoie:
- string A cleaned version of the path or exit on error.
- Depuis:
- 11.1
- Exceptions:
-
Définition à la ligne 166 du fichier path.php.
Références clean().
Référencé par JControllerLegacy\addPath().
{
if (strpos($path, '..') !== false)
{
throw new Exception('JPath::check Use of relative paths not permitted', 20);
}
if ((JPATH_ROOT != '') && strpos($path, self::clean(JPATH_ROOT)) !== 0)
{
throw new Exception('JPath::check Snooping out of bounds @ ' . $path, 20);
}
return $path;
}
static JPath::clean |
( |
|
$path, |
|
|
|
$ds = DIRECTORY_SEPARATOR |
|
) |
| |
|
static |
Function to strip additional / or \ in a path name.
- Paramètres:
-
string | $path | The path to clean. |
string | $ds | Directory separator (optional). |
- Renvoie:
- string The cleaned path.
- Depuis:
- 11.1
- Exceptions:
-
Définition à la ligne 195 du fichier path.php.
Référencé par JModelLegacy\addIncludePath(), JCacheController\addIncludePath(), JCacheStorage\addIncludePath(), JCache\addIncludePath(), check(), JFolder\copy(), JFile\copy(), JFolder\create(), JFile\delete(), JFolder\delete(), JFolder\exists(), JFile\exists(), JArchive\extract(), JArchiveTar\extract(), JArchiveZip\extractCustom(), JFolder\files(), JFolder\folders(), JFormFieldModulelayout\getInput(), JFormFieldComponentlayout\getInput(), JViewHtml\getPath(), getPermissions(), JFolder\listFolderTree(), JFile\move(), JFolder\move(), JFile\upload(), et JFile\write().
{
if (!is_string($path))
{
throw new UnexpectedValueException('JPath::clean: $path is not a string.');
}
$path = trim($path);
if (empty($path))
{
$path = JPATH_ROOT;
}
elseif (($ds == '\\') && ($path[0] == '\\' ) && ( $path[1] == '\\' ))
{
$path = "\\" . preg_replace('#[/\\\\]+#', $ds, $path);
}
else
{
$path = preg_replace('#[/\\\\]+#', $ds, $path);
}
return $path;
}
static JPath::find |
( |
|
$paths, |
|
|
|
$file |
|
) |
| |
|
static |
Searches the directory paths for a given file.
- Paramètres:
-
mixed | $paths | An path string or array of path strings to search in |
string | $file | The file name to look for. |
- Renvoie:
- mixed The full path and file name for the target file, or boolean false if the file is not found in any of the paths.
- Depuis:
- 11.1
Définition à la ligne 274 du fichier path.php.
Référencé par JControllerLegacy\createView(), JCacheController\getInstance(), JCacheStorage\getInstance(), JModelLegacy\getInstance(), JTable\getInstance(), JViewHtml\getPath(), JFormHelper\loadClass(), JForm\loadFile(), JViewLegacy\loadHelper(), et JViewLegacy\loadTemplate().
{
if (!is_array($paths) && !($paths instanceof Iterator))
{
settype($paths, 'array');
}
foreach ($paths as $path)
{
$fullname = $path . '/' . $file;
if (strpos($path, '://') === false)
{
$path = realpath($path);
$fullname = realpath($fullname);
}
if (file_exists($fullname) && substr($fullname, 0, strlen($path)) == $path)
{
return $fullname;
}
}
return false;
}
static JPath::getPermissions |
( |
|
$path | ) |
|
|
static |
Get the permissions of the file/folder at a given path.
- Paramètres:
-
string | $path | The path of a file/folder. |
- Renvoie:
- string Filesystem permissions.
- Depuis:
- 11.1
Définition à la ligne 129 du fichier path.php.
Références clean().
{
$mode = @ decoct(@ fileperms($path) & 0777);
if (strlen($mode) < 3)
{
return '---------';
}
$parsed_mode = '';
for ($i = 0; $i < 3; $i++)
{
$parsed_mode .= ($mode{$i} & 04) ? "r" : "-";
$parsed_mode .= ($mode{$i} & 02) ? "w" : "-";
$parsed_mode .= ($mode{$i} & 01) ? "x" : "-";
}
return $parsed_mode;
}
static JPath::isOwner |
( |
|
$path | ) |
|
|
static |
Method to determine if script owns the path.
- Paramètres:
-
string | $path | Path to check ownership. |
- Renvoie:
- boolean True if the php script owns the path passed.
- Depuis:
- 11.1
Définition à la ligne 231 du fichier path.php.
Références JFile\delete(), jimport(), et JFile\write().
{
$tmp = md5(mt_rand());
$ssp = ini_get('session.save_path');
$jtp = JPATH_SITE . '/tmp';
$dir = is_writable('/tmp') ? '/tmp' : false;
$dir = (!$dir && is_writable($ssp)) ? $ssp : false;
$dir = (!$dir && is_writable($jtp)) ? $jtp : false;
if ($dir)
{
$test = $dir . '/' . $tmp;
$blank = '';
$return = (fileowner($test) == fileowner($path));
return $return;
}
return false;
}
static JPath::setPermissions |
( |
|
$path, |
|
|
|
$filemode = '0644' , |
|
|
|
$foldermode = '0755' |
|
) |
| |
|
static |
Chmods files and directories recursively to given permissions.
- Paramètres:
-
string | $path | Root path to begin changing mode [without trailing slash]. |
string | $filemode | Octal representation of the value to change file mode to [null = no change]. |
string | $foldermode | Octal representation of the value to change folder mode to [null = no change]. |
- Renvoie:
- boolean True if successful [one fail means the whole operation failed].
- Depuis:
- 11.1
Définition à la ligne 64 du fichier path.php.
Référencé par JFile\upload().
{
$ret = true;
if (is_dir($path))
{
$dh = opendir($path);
while ($file = readdir($dh))
{
if ($file != '.' && $file != '..')
{
$fullpath = $path . '/' . $file;
if (is_dir($fullpath))
{
if (!self::setPermissions($fullpath, $filemode, $foldermode))
{
$ret = false;
}
}
else
{
if (isset($filemode))
{
if (!@ chmod($fullpath, octdec($filemode)))
{
$ret = false;
}
}
}
}
}
closedir($dh);
if (isset($foldermode))
{
if (!@ chmod($path, octdec($foldermode)))
{
$ret = false;
}
}
}
else
{
if (isset($filemode))
{
$ret = @ chmod($path, octdec($filemode));
}
}
return $ret;
}
La documentation de cette classe a été générée à partir du fichier suivant :
- jplatform-13.1/joomla/filesystem/path.php