interface PathInterface
The interface implemented by all Pathogen paths.
Methods
array<integer,string> |
atoms()
Get the atoms of this path. |
|
string |
atomAt(integer $index)
Get a single path atom by index. |
|
mixed |
atomAtDefault(integer $index, mixed $default = null)
Get a single path atom by index, falling back to a default if the index is undefined. |
|
array<integer,string> |
sliceAtoms(integer $index, integer|null $length = null)
Get a subset of the atoms of this path. |
|
boolean |
hasAtoms()
Determine if this path has any atoms. |
|
boolean |
hasTrailingSeparator()
Determine if this path has a trailing separator. |
|
string |
string()
Generate a string representation of this path. |
|
string |
__toString()
Generate a string representation of this path. |
|
string |
name()
Get this path's name. |
|
array<integer,string> |
nameAtoms()
Get this path's name atoms. |
|
string |
nameAtomAt(integer $index)
Get a single path name atom by index. |
|
mixed |
nameAtomAtDefault(integer $index, mixed $default = null)
Get a single path name atom by index, falling back to a default if the index is undefined. |
|
array<integer,string> |
sliceNameAtoms(integer $index, integer|null $length = null)
Get a subset of this path's name atoms. |
|
string |
nameWithoutExtension()
Get this path's name, excluding the last extension. |
|
string |
namePrefix()
Get this path's name, excluding all extensions. |
|
string|null |
nameSuffix()
Get all of this path's extensions. |
|
string|null |
extension()
Get this path's last extension. |
|
boolean |
hasExtension()
Determine if this path has any extensions. |
|
boolean |
contains(string $needle, boolean|null $caseSensitive = null)
Determine if this path contains a substring. |
|
boolean |
startsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path starts with a substring. |
|
boolean |
endsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path ends with a substring. |
|
boolean |
matches(string $pattern, boolean|null $caseSensitive = null, integer|null $flags = null)
Determine if this path matches a wildcard pattern. |
|
boolean |
matchesRegex(string $pattern, array $matches = null, integer|null $flags = null, integer|null $offset = null)
Determine if this path matches a regular expression. |
|
boolean |
nameContains(string $needle, boolean|null $caseSensitive = null)
Determine if this path's name contains a substring. |
|
boolean |
nameStartsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path's name starts with a substring. |
|
boolean |
nameMatches(string $pattern, boolean|null $caseSensitive = null, integer|null $flags = null)
Determine if this path's name matches a wildcard pattern. |
|
boolean |
nameMatchesRegex(string $pattern, array $matches = null, integer|null $flags = null, integer|null $offset = null)
Determine if this path's name matches a regular expression. |
|
PathInterface |
parent(integer|null $numLevels = null)
Get the parent of this path a specified number of levels up. |
|
PathInterface |
stripTrailingSlash()
Strips the trailing slash from this path. |
|
PathInterface |
stripExtension()
Strips the last extension from this path. |
|
PathInterface |
stripNameSuffix()
Strips all extensions from this path. |
|
PathInterface |
joinAtoms($atom)
Joins one or more atoms to this path. |
|
PathInterface |
joinAtomSequence(mixed<string> $atoms)
Joins a sequence of atoms to this path. |
|
PathInterface |
join(RelativePathInterface $path)
Joins the supplied path to this path. |
|
PathInterface |
joinTrailingSlash()
Adds a trailing slash to this path. |
|
PathInterface |
joinExtensions($extension)
Joins one or more extensions to this path. |
|
PathInterface |
joinExtensionSequence(mixed<string> $extensions)
Joins a sequence of extensions to this path. |
|
PathInterface |
suffixName(string $suffix)
Suffixes this path's name with a supplied string. |
|
PathInterface |
prefixName(string $prefix)
Prefixes this path's name with a supplied string. |
|
PathInterface |
replace(integer $index, mixed<string> $replacement, integer|null $length = null)
Replace a section of this path with the supplied atom sequence. |
|
PathInterface |
replaceName(string $name)
Replace this path's name. |
|
PathInterface |
replaceNameWithoutExtension(string $nameWithoutExtension)
Replace this path's name, but keep the last extension. |
|
PathInterface |
replaceNamePrefix(string $namePrefix)
Replace this path's name, but keep any extensions. |
|
PathInterface |
replaceNameSuffix(string|null $nameSuffix)
Replace all of this path's extensions. |
|
PathInterface |
replaceExtension(string|null $extension)
Replace this path's last extension. |
|
PathInterface |
replaceNameAtoms(integer $index, mixed<string> $replacement, integer|null $length = null)
Replace a section of this path's name with the supplied name atom sequence. |
|
AbsolutePathInterface |
toAbsolute()
Get an absolute version of this path. |
|
RelativePathInterface |
toRelative()
Get a relative version of this path. |
|
PathInterface |
normalize()
Normalize this path to its most canonical form. |
Details
at line 26
public array<integer,string>
atoms()
Get the atoms of this path.
For example, the path '/foo/bar' has the atoms 'foo' and 'bar'.
at line 36
public string
atomAt(integer $index)
Get a single path atom by index.
at line 47
public mixed
atomAtDefault(integer $index, mixed $default = null)
Get a single path atom by index, falling back to a default if the index is undefined.
at line 57
public array<integer,string>
sliceAtoms(integer $index, integer|null $length = null)
Get a subset of the atoms of this path.
at line 64
public boolean
hasAtoms()
Determine if this path has any atoms.
at line 71
public boolean
hasTrailingSeparator()
Determine if this path has a trailing separator.
at line 78
public string
string()
Generate a string representation of this path.
at line 85
public string
__toString()
Generate a string representation of this path.
at line 92
public string
name()
Get this path's name.
at line 101
public array<integer,string>
nameAtoms()
Get this path's name atoms.
For example, the path name 'foo.bar' has the atoms 'foo' and 'bar'.
at line 111
public string
nameAtomAt(integer $index)
Get a single path name atom by index.
at line 122
public mixed
nameAtomAtDefault(integer $index, mixed $default = null)
Get a single path name atom by index, falling back to a default if the index is undefined.
at line 132
public array<integer,string>
sliceNameAtoms(integer $index, integer|null $length = null)
Get a subset of this path's name atoms.
at line 139
public string
nameWithoutExtension()
Get this path's name, excluding the last extension.
at line 146
public string
namePrefix()
Get this path's name, excluding all extensions.
at line 153
public string|null
nameSuffix()
Get all of this path's extensions.
at line 160
public string|null
extension()
Get this path's last extension.
at line 167
public boolean
hasExtension()
Determine if this path has any extensions.
at line 177
public boolean
contains(string $needle, boolean|null $caseSensitive = null)
Determine if this path contains a substring.
at line 187
public boolean
startsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path starts with a substring.
at line 197
public boolean
endsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path ends with a substring.
at line 208
public boolean
matches(string $pattern, boolean|null $caseSensitive = null, integer|null $flags = null)
Determine if this path matches a wildcard pattern.
at line 220
public boolean
matchesRegex(string $pattern, array $matches = null, integer|null $flags = null, integer|null $offset = null)
Determine if this path matches a regular expression.
at line 235
public boolean
nameContains(string $needle, boolean|null $caseSensitive = null)
Determine if this path's name contains a substring.
at line 245
public boolean
nameStartsWith(string $needle, boolean|null $caseSensitive = null)
Determine if this path's name starts with a substring.
at line 256
public boolean
nameMatches(string $pattern, boolean|null $caseSensitive = null, integer|null $flags = null)
Determine if this path's name matches a wildcard pattern.
at line 268
public boolean
nameMatchesRegex(string $pattern, array $matches = null, integer|null $flags = null, integer|null $offset = null)
Determine if this path's name matches a regular expression.
at line 282
public PathInterface
parent(integer|null $numLevels = null)
Get the parent of this path a specified number of levels up.
at line 289
public PathInterface
stripTrailingSlash()
Strips the trailing slash from this path.
at line 296
public PathInterface
stripExtension()
Strips the last extension from this path.
at line 303
public PathInterface
stripNameSuffix()
Strips all extensions from this path.
at line 314
public PathInterface
joinAtoms($atom)
Joins one or more atoms to this path.
at line 324
public PathInterface
joinAtomSequence(mixed<string> $atoms)
Joins a sequence of atoms to this path.
at line 333
public PathInterface
join(RelativePathInterface $path)
Joins the supplied path to this path.
at line 340
public PathInterface
joinTrailingSlash()
Adds a trailing slash to this path.
at line 351
public PathInterface
joinExtensions($extension)
Joins one or more extensions to this path.
at line 361
public PathInterface
joinExtensionSequence(mixed<string> $extensions)
Joins a sequence of extensions to this path.
at line 371
public PathInterface
suffixName(string $suffix)
Suffixes this path's name with a supplied string.
at line 381
public PathInterface
prefixName(string $prefix)
Prefixes this path's name with a supplied string.
at line 392
public PathInterface
replace(integer $index, mixed<string> $replacement, integer|null $length = null)
Replace a section of this path with the supplied atom sequence.
at line 401
public PathInterface
replaceName(string $name)
Replace this path's name.
at line 410
public PathInterface
replaceNameWithoutExtension(string $nameWithoutExtension)
Replace this path's name, but keep the last extension.
at line 419
public PathInterface
replaceNamePrefix(string $namePrefix)
Replace this path's name, but keep any extensions.
at line 428
public PathInterface
replaceNameSuffix(string|null $nameSuffix)
Replace all of this path's extensions.
at line 437
public PathInterface
replaceExtension(string|null $extension)
Replace this path's last extension.
at line 449
public PathInterface
replaceNameAtoms(integer $index, mixed<string> $replacement, integer|null $length = null)
Replace a section of this path's name with the supplied name atom sequence.
at line 460
public AbsolutePathInterface
toAbsolute()
Get an absolute version of this path.
If this path is relative, a new absolute path with equivalent atoms will be returned. Otherwise, this path will be retured unaltered.
at line 471
public RelativePathInterface
toRelative()
Get a relative version of this path.
If this path is absolute, a new relative path with equivalent atoms will be returned. Otherwise, this path will be retured unaltered.
at line 478
public PathInterface
normalize()
Normalize this path to its most canonical form.