caisse-bliss/v1/.phpdoc/build/classes/Symfony-Component-Filesystem-Path.html
2025-02-09 16:45:35 +01:00

2564 lines
117 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Documentation</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/template.js"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -three phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/doctrinemigrations.html" class="">DoctrineMigrations</a>
</h4>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/hwi.html" class="">HWI</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/hwi-bundle.html" class="">Bundle</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/caissebliss.html" class="">CaisseBliss</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/caissebliss-controller.html" class="">Controller</a>
</li>
<li>
<a href="namespaces/caissebliss-entity.html" class="">Entity</a>
</li>
<li>
<a href="namespaces/caissebliss-form.html" class="">Form</a>
</li>
<li>
<a href="namespaces/caissebliss-repository.html" class="">Repository</a>
</li>
<li>
<a href="namespaces/caissebliss-security.html" class="">Security</a>
</li>
<li>
<a href="namespaces/caissebliss-service.html" class="">Service</a>
</li>
<li>
<a href="namespaces/caissebliss-tests.html" class="">Tests</a>
</li>
<li>
<a href="namespaces/caissebliss-traits.html" class="">Traits</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/tests.html" class="">Tests</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/tests-appbundle.html" class="">AppBundle</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/app.html" class="">App</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/app-controller.html" class="">Controller</a>
</li>
<li>
<a href="namespaces/app-datafixtures.html" class="">DataFixtures</a>
</li>
<li>
<a href="namespaces/app-entity.html" class="">Entity</a>
</li>
<li>
<a href="namespaces/app-form.html" class="">Form</a>
</li>
<li>
<a href="namespaces/app-repository.html" class="">Repository</a>
</li>
<li>
<a href="namespaces/app-security.html" class="">Security</a>
</li>
<li>
<a href="namespaces/app-traits.html" class="">Traits</a>
</li>
<li>
<a href="namespaces/app-tests.html" class="">Tests</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/containervvrt4pd.html" class="">ContainerVvRT4pd</a>
</h4>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/symfony.html" class="">Symfony</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/symfony-config.html" class="">Config</a>
</li>
<li>
<a href="namespaces/symfony-component.html" class="">Component</a>
</li>
<li>
<a href="namespaces/symfony-contracts.html" class="">Contracts</a>
</li>
<li>
<a href="namespaces/symfony-bundle.html" class="">Bundle</a>
</li>
<li>
<a href="namespaces/symfony-bridge.html" class="">Bridge</a>
</li>
<li>
<a href="namespaces/symfony-flex.html" class="">Flex</a>
</li>
<li>
<a href="namespaces/symfony-polyfill.html" class="">Polyfill</a>
</li>
<li>
<a href="namespaces/symfony-runtime.html" class="">Runtime</a>
</li>
<li>
<a href="namespaces/symfony-webpackencorebundle.html" class="">WebpackEncoreBundle</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/composer.html" class="">Composer</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/composer-autoload.html" class="">Autoload</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/doctrine.html" class="">Doctrine</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/doctrine-common.html" class="">Common</a>
</li>
<li>
<a href="namespaces/doctrine-dbal.html" class="">DBAL</a>
</li>
<li>
<a href="namespaces/doctrine-deprecations.html" class="">Deprecations</a>
</li>
<li>
<a href="namespaces/doctrine-bundle.html" class="">Bundle</a>
</li>
<li>
<a href="namespaces/doctrine-inflector.html" class="">Inflector</a>
</li>
<li>
<a href="namespaces/doctrine-instantiator.html" class="">Instantiator</a>
</li>
<li>
<a href="namespaces/doctrine-migrations.html" class="">Migrations</a>
</li>
<li>
<a href="namespaces/doctrine-orm.html" class="">ORM</a>
</li>
<li>
<a href="namespaces/doctrine-persistence.html" class="">Persistence</a>
</li>
<li>
<a href="namespaces/doctrine-sqlformatter.html" class="">SqlFormatter</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/easycorp.html" class="">EasyCorp</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/easycorp-bundle.html" class="">Bundle</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/egulias.html" class="">Egulias</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/egulias-emailvalidator.html" class="">EmailValidator</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/proxymanager.html" class="">ProxyManager</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/proxymanager-autoloader.html" class="">Autoloader</a>
</li>
<li>
<a href="namespaces/proxymanager-exception.html" class="">Exception</a>
</li>
<li>
<a href="namespaces/proxymanager-factory.html" class="">Factory</a>
</li>
<li>
<a href="namespaces/proxymanager-filelocator.html" class="">FileLocator</a>
</li>
<li>
<a href="namespaces/proxymanager-generator.html" class="">Generator</a>
</li>
<li>
<a href="namespaces/proxymanager-generatorstrategy.html" class="">GeneratorStrategy</a>
</li>
<li>
<a href="namespaces/proxymanager-inflector.html" class="">Inflector</a>
</li>
<li>
<a href="namespaces/proxymanager-proxy.html" class="">Proxy</a>
</li>
<li>
<a href="namespaces/proxymanager-proxygenerator.html" class="">ProxyGenerator</a>
</li>
<li>
<a href="namespaces/proxymanager-signature.html" class="">Signature</a>
</li>
<li>
<a href="namespaces/proxymanager-stub.html" class="">Stub</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/laminas.html" class="">Laminas</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/laminas-code.html" class="">Code</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/monolog.html" class="">Monolog</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/monolog-attribute.html" class="">Attribute</a>
</li>
<li>
<a href="namespaces/monolog-formatter.html" class="">Formatter</a>
</li>
<li>
<a href="namespaces/monolog-handler.html" class="">Handler</a>
</li>
<li>
<a href="namespaces/monolog-processor.html" class="">Processor</a>
</li>
<li>
<a href="namespaces/monolog-test.html" class="">Test</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/deepcopy.html" class="">DeepCopy</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/deepcopy-exception.html" class="">Exception</a>
</li>
<li>
<a href="namespaces/deepcopy-filter.html" class="">Filter</a>
</li>
<li>
<a href="namespaces/deepcopy-matcher.html" class="">Matcher</a>
</li>
<li>
<a href="namespaces/deepcopy-reflection.html" class="">Reflection</a>
</li>
<li>
<a href="namespaces/deepcopy-typefilter.html" class="">TypeFilter</a>
</li>
<li>
<a href="namespaces/deepcopy-typematcher.html" class="">TypeMatcher</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/phpparser.html" class="">PhpParser</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/phpparser-builder.html" class="">Builder</a>
</li>
<li>
<a href="namespaces/phpparser-comment.html" class="">Comment</a>
</li>
<li>
<a href="namespaces/phpparser-errorhandler.html" class="">ErrorHandler</a>
</li>
<li>
<a href="namespaces/phpparser-internal.html" class="">Internal</a>
</li>
<li>
<a href="namespaces/phpparser-lexer.html" class="">Lexer</a>
</li>
<li>
<a href="namespaces/phpparser-node.html" class="">Node</a>
</li>
<li>
<a href="namespaces/phpparser-nodevisitor.html" class="">NodeVisitor</a>
</li>
<li>
<a href="namespaces/phpparser-parser.html" class="">Parser</a>
</li>
<li>
<a href="namespaces/phpparser-prettyprinter.html" class="">PrettyPrinter</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/phario.html" class="">PharIo</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/phario-manifest.html" class="">Manifest</a>
</li>
<li>
<a href="namespaces/phario-version.html" class="">Version</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/phpdocumentor.html" class="">phpDocumentor</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/phpdocumentor-reflection.html" class="">Reflection</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/phpstan.html" class="">PHPStan</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/phpstan-phpdocparser.html" class="">PhpDocParser</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/phpunit.html" class="">PHPUnit</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/phpunit-framework.html" class="">Framework</a>
</li>
<li>
<a href="namespaces/phpunit-runner.html" class="">Runner</a>
</li>
<li>
<a href="namespaces/phpunit-textui.html" class="">TextUI</a>
</li>
<li>
<a href="namespaces/phpunit-util.html" class="">Util</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/psr.html" class="">Psr</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/psr-cache.html" class="">Cache</a>
</li>
<li>
<a href="namespaces/psr-container.html" class="">Container</a>
</li>
<li>
<a href="namespaces/psr-eventdispatcher.html" class="">EventDispatcher</a>
</li>
<li>
<a href="namespaces/psr-link.html" class="">Link</a>
</li>
<li>
<a href="namespaces/psr-log.html" class="">Log</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/sebastianbergmann.html" class="">SebastianBergmann</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/sebastianbergmann-codecoverage.html" class="">CodeCoverage</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-fileiterator.html" class="">FileIterator</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-invoker.html" class="">Invoker</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-template.html" class="">Template</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-timer.html" class="">Timer</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-cliparser.html" class="">CliParser</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-codeunit.html" class="">CodeUnit</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-codeunitreverselookup.html" class="">CodeUnitReverseLookup</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-comparator.html" class="">Comparator</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-complexity.html" class="">Complexity</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-diff.html" class="">Diff</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-environment.html" class="">Environment</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-exporter.html" class="">Exporter</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-globalstate.html" class="">GlobalState</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-linesofcode.html" class="">LinesOfCode</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-objectenumerator.html" class="">ObjectEnumerator</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-objectreflector.html" class="">ObjectReflector</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-recursioncontext.html" class="">RecursionContext</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-resourceoperations.html" class="">ResourceOperations</a>
</li>
<li>
<a href="namespaces/sebastianbergmann-type.html" class="">Type</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/theseer.html" class="">TheSeer</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/theseer-tokenizer.html" class="">Tokenizer</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/twig.html" class="">Twig</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/twig-extra.html" class="">Extra</a>
</li>
<li>
<a href="namespaces/twig-cache.html" class="">Cache</a>
</li>
<li>
<a href="namespaces/twig-error.html" class="">Error</a>
</li>
<li>
<a href="namespaces/twig-extension.html" class="">Extension</a>
</li>
<li>
<a href="namespaces/twig-loader.html" class="">Loader</a>
</li>
<li>
<a href="namespaces/twig-node.html" class="">Node</a>
</li>
<li>
<a href="namespaces/twig-nodevisitor.html" class="">NodeVisitor</a>
</li>
<li>
<a href="namespaces/twig-profiler.html" class="">Profiler</a>
</li>
<li>
<a href="namespaces/twig-runtimeloader.html" class="">RuntimeLoader</a>
</li>
<li>
<a href="namespaces/twig-sandbox.html" class="">Sandbox</a>
</li>
<li>
<a href="namespaces/twig-test.html" class="">Test</a>
</li>
<li>
<a href="namespaces/twig-tokenparser.html" class="">TokenParser</a>
</li>
<li>
<a href="namespaces/twig-util.html" class="">Util</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="namespaces/webmozart.html" class="">Webmozart</a>
</h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/webmozart-assert.html" class="">Assert</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace">
<a href="packages/Application.html" class="">Application</a>
</h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -nine phpdocumentor-content">
<section>
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/symfony.html">Symfony</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/symfony-component.html">Component</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/symfony-component-filesystem.html">Filesystem</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
Path
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
</ul>
</div>
</h2>
<div class="phpdocumentor-label-line">
<div class="phpdocumentor-label phpdocumentor-label--success"><span>Final</span><span>Yes</span></div>
</div>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">28</span>
</aside>
<p class="phpdocumentor-summary">Contains utility methods for handling path strings.</p>
<section class="phpdocumentor-description"><p>The methods in this class are able to deal with both UNIX and Windows paths
with both forward and backward slashes. All methods return normalized parts
containing only forward slashes and no excess &quot;.&quot; and &quot;..&quot; segments.</p>
</section>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="classes/Symfony-Component-Filesystem-Path.html#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Bernhard Schussek <a href="mailto:bschussek@gmail.com">bschussek@gmail.com</a></p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Thomas Schulz <a href="mailto:mail@king2500.net">mail@king2500.net</a></p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Théo Fidry <a href="mailto:theo.fidry@gmail.com">theo.fidry@gmail.com</a></p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="classes/Symfony-Component-Filesystem-Path.html#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<h4 id="toc-constants">
Constants
<a href="classes/Symfony-Component-Filesystem-Path.html#toc-constants" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -constant -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_SIZE">CLEANUP_SIZE</a>
<span>
&nbsp;= 1000 </span>
</dt>
<dd>The buffer size after the cleanup operation.</dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_THRESHOLD">CLEANUP_THRESHOLD</a>
<span>
&nbsp;= 1250 </span>
</dt>
<dd>The number of buffer entries that triggers a cleanup operation.</dd>
</dl>
<h4 id="toc-properties">
Properties
<a href="classes/Symfony-Component-Filesystem-Path.html#toc-properties" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#property_buffer">$buffer</a>
<span>
&nbsp;: array&lt;string, string&gt; </span>
</dt>
<dd>Buffers input/output of {@link canonicalize()}.</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#property_bufferSize">$bufferSize</a>
<span>
&nbsp;: int </span>
</dt>
</dl>
<h4 id="toc-methods">
Methods
<a href="classes/Symfony-Component-Filesystem-Path.html#toc-methods" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_canonicalize">canonicalize()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Canonicalizes the given path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_changeExtension">changeExtension()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Changes the extension of a path string.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getDirectory">getDirectory()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Returns the directory part of the path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getExtension">getExtension()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Returns the extension from a file path (without leading dot).</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getFilenameWithoutExtension">getFilenameWithoutExtension()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Returns the file name without the extension from a file path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getHomeDirectory">getHomeDirectory()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Returns canonical path of the user&#039;s home directory.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getLongestCommonBasePath">getLongestCommonBasePath()</a>
<span>
&nbsp;: string|null </span>
</dt>
<dd>Returns the longest common base path in canonical form of a set of paths or
`null` if the paths are on different Windows partitions.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getRoot">getRoot()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Returns the root directory of a path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_hasExtension">hasExtension()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Returns whether the path has an (or the specified) extension.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isAbsolute">isAbsolute()</a>
<span>
&nbsp;: bool </span>
</dt>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isBasePath">isBasePath()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Returns whether a path is a base path of another path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isLocal">isLocal()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Returns whether the given path is on the local filesystem.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isRelative">isRelative()</a>
<span>
&nbsp;: bool </span>
</dt>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_join">join()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Joins two or more path strings into a canonical path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeAbsolute">makeAbsolute()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Turns a relative path into an absolute path in canonical form.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeRelative">makeRelative()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Turns a path into a relative path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_normalize">normalize()</a>
<span>
&nbsp;: string </span>
</dt>
<dd>Normalizes the given path.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_findCanonicalParts">findCanonicalParts()</a>
<span>
&nbsp;: array&lt;string|int, string&gt; </span>
</dt>
<dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_split">split()</a>
<span>
&nbsp;: array{: string, : string} </span>
</dt>
<dd>Splits a canonical path into its root directory and the remainder.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/Symfony-Component-Filesystem-Path.html#method_toLower">toLower()</a>
<span>
&nbsp;: string </span>
</dt>
</dl>
<section class="phpdocumentor-constants">
<h3 class="phpdocumentor-elements__header" id="constants">
Constants
<a href="classes/Symfony-Component-Filesystem-Path.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article class="phpdocumentor-element -constant -private ">
<h4 class="phpdocumentor-element__name" id="constant_CLEANUP_SIZE">
CLEANUP_SIZE
<a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_SIZE" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">38</span>
</aside>
<p class="phpdocumentor-summary">The buffer size after the cleanup operation.</p>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">CLEANUP_SIZE</span>
= <span class="phpdocumentor-signature__default-value">1000</span>
</code>
</article>
<article class="phpdocumentor-element -constant -private ">
<h4 class="phpdocumentor-element__name" id="constant_CLEANUP_THRESHOLD">
CLEANUP_THRESHOLD
<a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_THRESHOLD" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">33</span>
</aside>
<p class="phpdocumentor-summary">The number of buffer entries that triggers a cleanup operation.</p>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">CLEANUP_THRESHOLD</span>
= <span class="phpdocumentor-signature__default-value">1250</span>
</code>
</article>
</section>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/Symfony-Component-Filesystem-Path.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="property_buffer">
$buffer
<a href="classes/Symfony-Component-Filesystem-Path.html#property_buffer" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">45</span>
</aside>
<p class="phpdocumentor-summary">Buffers input/output of {@link canonicalize()}.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type">array&lt;string, string&gt;</span>
<span class="phpdocumentor-signature__name">$buffer</span>
= <span class="phpdocumentor-signature__default-value">[]</span></code>
</article>
<article
class="
phpdocumentor-element
-property
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="property_bufferSize">
$bufferSize
<a href="classes/Symfony-Component-Filesystem-Path.html#property_bufferSize" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">50</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type">int</span>
<span class="phpdocumentor-signature__name">$bufferSize</span>
= <span class="phpdocumentor-signature__default-value">0</span></code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/Symfony-Component-Filesystem-Path.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_canonicalize">
canonicalize()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_canonicalize" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">69</span>
</aside>
<p class="phpdocumentor-summary">Canonicalizes the given path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">canonicalize</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>During normalization, all slashes are replaced by forward slashes (&quot;/&quot;).
Furthermore, all &quot;.&quot; and &quot;..&quot; segments are removed as far as possible.
&quot;..&quot; segments at the beginning of relative paths are not removed.</p>
<pre class="prettyprint"><code class="language-php">echo Path::canonicalize(&quot;\symfony\puli\..\css\style.css&quot;);
// =&gt; /symfony/css/style.css
echo Path::canonicalize(&quot;../css/./style.css&quot;);
// =&gt; ../css/style.css
</code></pre>
<p>This method is able to deal with both UNIX and Windows paths.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_changeExtension">
changeExtension()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_changeExtension" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">342</span>
</aside>
<p class="phpdocumentor-summary">Changes the extension of a path string.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">changeExtension</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$extension</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The path string with filename.ext to change.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$extension</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>new extension (with or without leading dot)</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
&mdash;
<section class="phpdocumentor-description"><p>the path string with new file extension</p>
</section>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getDirectory">
getDirectory()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getDirectory" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">145</span>
</aside>
<p class="phpdocumentor-summary">Returns the directory part of the path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getDirectory</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>This method is similar to PHP's dirname(), but handles various cases
where dirname() returns a weird result:</p>
<ul>
<li>dirname() does not accept backslashes on UNIX</li>
<li>dirname(&quot;C:/symfony&quot;) returns &quot;C:&quot;, not &quot;C:/&quot;</li>
<li>dirname(&quot;C:/&quot;) returns &quot;.&quot;, not &quot;C:/&quot;</li>
<li>dirname(&quot;C:&quot;) returns &quot;.&quot;, not &quot;C:/&quot;</li>
<li>dirname(&quot;symfony&quot;) returns &quot;.&quot;, not &quot;&quot;</li>
<li>dirname() does not canonicalize the result</li>
</ul>
<p>This method fixes these shortcomings and behaves like dirname()
otherwise.</p>
<p>The result is a canonical path.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
&mdash;
<section class="phpdocumentor-description"><p>The canonical directory part. Returns the root directory
if the root directory is passed. Returns an empty string
if a relative path is passed that contains no slashes.
Returns an empty string if an empty string is passed.</p>
</section>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getExtension">
getExtension()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getExtension" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">279</span>
</aside>
<p class="phpdocumentor-summary">Returns the extension from a file path (without leading dot).</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getExtension</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">bool&nbsp;</span><span class="phpdocumentor-signature__argument__name">$forceLowerCase</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">false</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$forceLowerCase</span>
: <span class="phpdocumentor-signature__argument__return-type">bool</span>
= <span class="phpdocumentor-signature__argument__default-value">false</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>forces the extension to be lower-case</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getFilenameWithoutExtension">
getFilenameWithoutExtension()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getFilenameWithoutExtension" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">260</span>
</aside>
<p class="phpdocumentor-summary">Returns the file name without the extension from a file path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getFilenameWithoutExtension</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$extension</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$extension</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>if specified, only that extension is cut
off (may contain leading dot)</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getHomeDirectory">
getHomeDirectory()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getHomeDirectory" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">192</span>
</aside>
<p class="phpdocumentor-summary">Returns canonical path of the user&#039;s home directory.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getHomeDirectory</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>Supported operating systems:</p>
<ul>
<li>UNIX</li>
<li>Windows8 and upper</li>
</ul>
<p>If your operating system or environment isn't supported, an exception is thrown.</p>
<p>The result is a canonical path.</p>
</section>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getHomeDirectory#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/Symfony-Component-Filesystem-Exception-RuntimeException.html"><abbr title="\Symfony\Component\Filesystem\Exception\RuntimeException">RuntimeException</abbr></a></span>
<section class="phpdocumentor-description"><p>If your operating system or environment isn't supported</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getLongestCommonBasePath">
getLongestCommonBasePath()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getLongestCommonBasePath" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">616</span>
</aside>
<p class="phpdocumentor-summary">Returns the longest common base path in canonical form of a set of paths or
`null` if the paths are on different Windows partitions.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getLongestCommonBasePath</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__variadic-operator">...</span><span class="phpdocumentor-signature__argument__name">$paths</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string|null</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>Dot segments (&quot;.&quot; and &quot;..&quot;) are removed/collapsed and all slashes turned
into forward slashes.</p>
<pre class="prettyprint"><code class="language-php">$basePath = Path::getLongestCommonBasePath(
'/symfony/css/style.css',
'/symfony/css/..'
);
// =&gt; /symfony
</code></pre>
<p>The root is returned if no common base path can be found:</p>
<pre class="prettyprint"><code class="language-php">$basePath = Path::getLongestCommonBasePath(
'/symfony/css/style.css',
'/puli/css/..'
);
// =&gt; /
</code></pre>
<p>If the paths are located on different Windows partitions, <code class="prettyprint">null</code> is
returned.</p>
<pre class="prettyprint"><code class="language-php">$basePath = Path::getLongestCommonBasePath(
'C:/symfony/css/style.css',
'D:/symfony/css/..'
);
// =&gt; null
</code></pre>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$paths</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string|null</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getRoot">
getRoot()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_getRoot" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">215</span>
</aside>
<p class="phpdocumentor-summary">Returns the root directory of a path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getRoot</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>The result is a canonical path.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
&mdash;
<section class="phpdocumentor-description"><p>The canonical root directory. Returns an empty string if
the given path is relative or empty.</p>
</section>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_hasExtension">
hasExtension()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_hasExtension" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">305</span>
</aside>
<p class="phpdocumentor-summary">Returns whether the path has an (or the specified) extension.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">hasExtension</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|array&lt;string|int, string&gt;|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$extensions</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">bool&nbsp;</span><span class="phpdocumentor-signature__argument__name">$ignoreCase</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">false</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>the path string</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$extensions</span>
: <span class="phpdocumentor-signature__argument__return-type">string|array&lt;string|int, string&gt;|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>if null or not provided, checks if
an extension exists, otherwise
checks for the specified extension
or array of extensions (with or
without leading dot)</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$ignoreCase</span>
: <span class="phpdocumentor-signature__argument__return-type">bool</span>
= <span class="phpdocumentor-signature__argument__default-value">false</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>whether to ignore case-sensitivity</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_isAbsolute">
isAbsolute()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isAbsolute" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">364</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">isAbsolute</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_isBasePath">
isBasePath()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isBasePath" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">710</span>
</aside>
<p class="phpdocumentor-summary">Returns whether a path is a base path of another path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">isBasePath</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$basePath</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$ofPath</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>Dot segments (&quot;.&quot; and &quot;..&quot;) are removed/collapsed and all slashes turned
into forward slashes.</p>
<pre class="prettyprint"><code class="language-php">Path::isBasePath('/symfony', '/symfony/css');
// =&gt; true
Path::isBasePath('/symfony', '/symfony');
// =&gt; true
Path::isBasePath('/symfony', '/symfony/..');
// =&gt; false
Path::isBasePath('/symfony', '/puli');
// =&gt; false
</code></pre>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$basePath</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$ofPath</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_isLocal">
isLocal()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isLocal" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">575</span>
</aside>
<p class="phpdocumentor-summary">Returns whether the given path is on the local filesystem.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">isLocal</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_isRelative">
isRelative()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_isRelative" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">398</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">isRelative</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_join">
join()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_join" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">656</span>
</aside>
<p class="phpdocumentor-summary">Joins two or more path strings into a canonical path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">join</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__variadic-operator">...</span><span class="phpdocumentor-signature__argument__name">$paths</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$paths</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_makeAbsolute">
makeAbsolute()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeAbsolute" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">440</span>
</aside>
<p class="phpdocumentor-summary">Turns a relative path into an absolute path in canonical form.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">makeAbsolute</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$basePath</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>Usually, the relative path is appended to the given base path. Dot
segments (&quot;.&quot; and &quot;..&quot;) are removed/collapsed and all slashes turned
into forward slashes.</p>
<pre class="prettyprint"><code class="language-php">echo Path::makeAbsolute(&quot;../style.css&quot;, &quot;/symfony/puli/css&quot;);
// =&gt; /symfony/puli/style.css
</code></pre>
<p>If an absolute path is passed, that path is returned unless its root
directory is different than the one of the base path. In that case, an
exception is thrown.</p>
<pre class="prettyprint"><code class="language-php">Path::makeAbsolute(&quot;/style.css&quot;, &quot;/symfony/puli/css&quot;);
// =&gt; /style.css
Path::makeAbsolute(&quot;C:/style.css&quot;, &quot;C:/symfony/puli/css&quot;);
// =&gt; C:/style.css
Path::makeAbsolute(&quot;C:/style.css&quot;, &quot;/symfony/puli/css&quot;);
// InvalidArgumentException
</code></pre>
<p>If the base path is not an absolute path, an exception is thrown.</p>
<p>The result is a canonical path.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$basePath</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>an absolute base path</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeAbsolute#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/Symfony-Component-Filesystem-Exception-InvalidArgumentException.html"><abbr title="\Symfony\Component\Filesystem\Exception\InvalidArgumentException">InvalidArgumentException</abbr></a></span>
<section class="phpdocumentor-description"><p>if the base path is not absolute or if
the given path is an absolute path with
a different root than the base path</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_makeRelative">
makeRelative()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeRelative" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">514</span>
</aside>
<p class="phpdocumentor-summary">Turns a path into a relative path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">makeRelative</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$basePath</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>The relative path is created relative to the given base path:</p>
<pre class="prettyprint"><code class="language-php">echo Path::makeRelative(&quot;/symfony/style.css&quot;, &quot;/symfony/puli&quot;);
// =&gt; ../style.css
</code></pre>
<p>If a relative path is passed and the base path is absolute, the relative
path is returned unchanged:</p>
<pre class="prettyprint"><code class="language-php">Path::makeRelative(&quot;style.css&quot;, &quot;/symfony/puli/css&quot;);
// =&gt; style.css
</code></pre>
<p>If both paths are relative, the relative path is created with the
assumption that both paths are relative to the same directory:</p>
<pre class="prettyprint"><code class="language-php">Path::makeRelative(&quot;style.css&quot;, &quot;symfony/puli/css&quot;);
// =&gt; ../../../style.css
</code></pre>
<p>If both paths are absolute, their root directory must be the same,
otherwise an exception is thrown:</p>
<pre class="prettyprint"><code class="language-php">Path::makeRelative(&quot;C:/symfony/style.css&quot;, &quot;/symfony/puli&quot;);
// InvalidArgumentException
</code></pre>
<p>If the passed path is absolute, but the base path is not, an exception
is thrown as well:</p>
<pre class="prettyprint"><code class="language-php">Path::makeRelative(&quot;/symfony/style.css&quot;, &quot;symfony/puli&quot;);
// InvalidArgumentException
</code></pre>
<p>If the base path is not an absolute path, an exception is thrown.</p>
<p>The result is a canonical path.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$basePath</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="classes/Symfony-Component-Filesystem-Path.html#method_makeRelative#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/Symfony-Component-Filesystem-Exception-InvalidArgumentException.html"><abbr title="\Symfony\Component\Filesystem\Exception\InvalidArgumentException">InvalidArgumentException</abbr></a></span>
<section class="phpdocumentor-description"><p>if the base path is not absolute or if
the given path has a different root
than the base path</p>
</section>
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_normalize">
normalize()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_normalize" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">117</span>
</aside>
<p class="phpdocumentor-summary">Normalizes the given path.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">normalize</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>During normalization, all slashes are replaced by forward slashes (&quot;/&quot;).
Contrary to <a href="canonicalize()"></a>, this method does not remove invalid
or dot path segments. Consequently, it is much more efficient and should
be used whenever the given path is known to be a valid, absolute system
path.</p>
<p>This method is able to deal with both UNIX and Windows paths.</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-private
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/Symfony-Component-Filesystem-Path.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">816</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<div class="phpdocumentor-label-line">
</div>
</article>
<article
class="phpdocumentor-element
-method
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="method_findCanonicalParts">
findCanonicalParts()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_findCanonicalParts" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">726</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">findCanonicalParts</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$root</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$pathWithoutRoot</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, string&gt;</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$root</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$pathWithoutRoot</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, string&gt;</span>
</section>
</article>
<article
class="phpdocumentor-element
-method
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="method_split">
split()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_split" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">772</span>
</aside>
<p class="phpdocumentor-summary">Splits a canonical path into its root directory and the remainder.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">split</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$path</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array{: string, : string}</span></code>
<div class="phpdocumentor-label-line">
</div>
<section class="phpdocumentor-description"><p>If the path has no root directory, an empty root directory will be
returned.</p>
<p>If the root directory is a Windows style partition, the resulting root
will always contain a trailing slash.</p>
<p>list ($root, $path) = Path::split(&quot;C:/symfony&quot;)
// =&gt; [&quot;C:/&quot;, &quot;symfony&quot;]</p>
<p>list ($root, $path) = Path::split(&quot;C:&quot;)
// =&gt; [&quot;C:/&quot;, &quot;&quot;]</p>
</section>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$path</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array{: string, : string}</span>
&mdash;
<section class="phpdocumentor-description"><p>an array with the root directory and the remaining relative path</p>
</section>
</section>
</article>
<article
class="phpdocumentor-element
-method
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="method_toLower">
toLower()
<a href="classes/Symfony-Component-Filesystem-Path.html#method_toLower" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="vendor/symfony/filesystem/Path.php"><a href="files/vendor-symfony-filesystem-path.html"><abbr title="vendor/symfony/filesystem/Path.php">Path.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">807</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">toLower</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$string</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
<div class="phpdocumentor-label-line">
</div>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$string</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">string</span>
</section>
</article>
</section>
<div class="phpdocumentor-modal" id="source-view">
<div class="phpdocumentor-modal-bg" data-exit-button></div>
<div class="phpdocumentor-modal-container">
<div class="phpdocumentor-modal-content">
<pre style="max-height: 500px; overflow-y: scroll" data-src="files/vendor/symfony/filesystem/Path.php.txt" class="language-php line-numbers linkable-line-numbers"></pre>
</div>
<button data-exit-button class="phpdocumentor-modal__close">&times;</button>
</div>
</div>
<script type="text/javascript">
(function () {
function loadExternalCodeSnippet(el, url, line) {
Array.prototype.slice.call(el.querySelectorAll('pre[data-src]')).forEach((pre) => {
const src = url || pre.getAttribute('data-src').replace(/\\/g, '/');
const language = 'php';
const code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState !== 4) {
return;
}
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
return;
}
if (xhr.status === 404) {
code.textContent = '✖ Error: File could not be found';
return;
}
if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
return;
}
code.textContent = '✖ Error: An unknown error occurred';
};
xhr.send(null);
});
}
const modalButtons = document.querySelectorAll("[data-modal]");
const openedAsLocalFile = window.location.protocol === 'file:';
if (modalButtons.length > 0 && openedAsLocalFile) {
console.warn(
'Viewing the source code is unavailable because you are opening this page from the file:// scheme; ' +
'browsers block XHR requests when a page is opened this way'
);
}
modalButtons.forEach(function (trigger) {
if (openedAsLocalFile) {
trigger.setAttribute("hidden", "hidden");
}
trigger.addEventListener("click", function (event) {
event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
if (!modal) {
console.error(`Modal with id "${trigger.dataset.modal}" could not be found`);
return;
}
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippet(modal, trigger.dataset.src || null, trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
})();
</script>
</article>
</section>
<section class="phpdocumentor-on-this-page__sidebar">
<section class="phpdocumentor-on-this-page__content">
<strong class="phpdocumentor-on-this-page__title">On this page</strong>
<ul class="phpdocumentor-list -clean">
<li class="phpdocumentor-on-this-page-section__title">Table Of Contents</li>
<li>
<ul class="phpdocumentor-list -clean">
<li><a href="classes/Symfony-Component-Filesystem-Path.html#toc-constants">Constants</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#toc-properties">Properties</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#toc-methods">Methods</a></li>
</ul>
</li>
<li class="phpdocumentor-on-this-page-section__title">Constants</li>
<li>
<ul class="phpdocumentor-list -clean">
<li><a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_SIZE">CLEANUP_SIZE</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#constant_CLEANUP_THRESHOLD">CLEANUP_THRESHOLD</a></li>
</ul>
</li>
<li class="phpdocumentor-on-this-page-section__title">Properties</li>
<li>
<ul class="phpdocumentor-list -clean">
<li><a href="classes/Symfony-Component-Filesystem-Path.html#property_buffer">$buffer<a href="classes/Symfony-Component-Filesystem-Path.html"></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#property_bufferSize">$bufferSize<a href="classes/Symfony-Component-Filesystem-Path.html"></li>
</ul>
</li>
<li class="phpdocumentor-on-this-page-section__title">Methods</li>
<li>
<ul class="phpdocumentor-list -clean">
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_canonicalize">canonicalize()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_changeExtension">changeExtension()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getDirectory">getDirectory()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getExtension">getExtension()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getFilenameWithoutExtension">getFilenameWithoutExtension()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getHomeDirectory">getHomeDirectory()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getLongestCommonBasePath">getLongestCommonBasePath()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_getRoot">getRoot()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_hasExtension">hasExtension()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_isAbsolute">isAbsolute()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_isBasePath">isBasePath()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_isLocal">isLocal()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_isRelative">isRelative()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_join">join()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_makeAbsolute">makeAbsolute()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_makeRelative">makeRelative()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_normalize">normalize()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method___construct">__construct()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_findCanonicalParts">findCanonicalParts()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_split">split()</a></li>
<li><a href="classes/Symfony-Component-Filesystem-Path.html#method_toLower">toLower()</a></li>
</ul>
</li>
</ul>
</section>
</section>
</div>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
<a href="classes/Symfony-Component-Filesystem-Path.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>