Package Home

Zend Framework 2 Documentation (Manual)

PHK Home

File: /modules/zend.filter.real-path.html

Size:11186
Storage flags:no_autoload,compress/gzip (29%)

RealPath — Zend Framework 2 2.4.2 documentation

RealPath

This filter will resolve given links and pathnames and returns canonicalized absolute pathnames.

Supported Options

The following options are supported for Zend\Filter\RealPath:

  • exists: This option defaults to TRUE which checks if the given path really exists.

Basic Usage

For any given link of pathname its absolute path will be returned. References to ‘/./‘, ‘/../‘ and extra ‘/‘ characters in the input path will be stripped. The resulting path will not have any symbolic link, ‘/./‘ or ‘/../‘ character.

Zend\Filter\RealPath will return FALSE on failure, e.g. if the file does not exist. On BSD systems Zend\Filter\RealPath doesn’t fail if only the last path component doesn’t exist, while other systems will return FALSE.

1
2
3
4
5
$filter = new Zend\Filter\RealPath();
$path   = '/www/var/path/../../mypath';
$filtered = $filter->filter($path);

// returns '/www/mypath'

Non-Existing Paths

Sometimes it is useful to get also paths when they don’t exist, f.e. when you want to get the real path for a path which you want to create. You can then either give a FALSE at initiation, or use setExists() to set it.

1
2
3
4
5
6
$filter = new Zend\Filter\RealPath(false);
$path   = '/www/var/path/../../non/existing/path';
$filtered = $filter->filter($path);

// returns '/www/non/existing/path'
// even when file_exists or realpath would return false

Table Of Contents

This Page

Note: You need to stay logged into your GitHub account to contribute to the documentation.

Edit this document

Edit this document

The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.

  1. Login with your GitHub account.
  2. Go to RealPath on GitHub.
  3. Edit file contents using GitHub's text editor in your web browser
  4. Fill in the Commit message text box at the end of the page telling why you did the changes. Press Propose file change button next to it when done.
  5. On Send a pull request page you don't need to fill in text anymore. Just press Send pull request button.
  6. Your changes are now queued for review under project's Pull requests tab on GitHub.

For more information about the PHK package format: http://phk.tekwire.net