X7ROOT File Manager
Current Path:
/home/gfecatvj/sites/vendor/illuminate/support
home
/
gfecatvj
/
sites
/
vendor
/
illuminate
/
support
/
📁
..
📄
AggregateServiceProvider.php
(995 B)
📄
Arr.php
(15.7 KB)
📄
Carbon.php
(115 B)
📄
Collection.php
(31.57 KB)
📄
Composer.php
(2.33 KB)
📄
ConfigurationUrlParser.php
(4.23 KB)
📄
DateFactory.php
(7.83 KB)
📄
Enumerable.php
(21.56 KB)
📄
Env.php
(2.63 KB)
📁
Facades
📄
Fluent.php
(3.79 KB)
📄
HigherOrderCollectionProxy.php
(1.38 KB)
📄
HigherOrderTapProxy.php
(665 B)
📄
HigherOrderWhenProxy.php
(1.28 KB)
📄
HtmlString.php
(877 B)
📄
InteractsWithTime.php
(1.55 KB)
📄
LICENSE.md
(1.05 KB)
📄
LazyCollection.php
(31.83 KB)
📄
Manager.php
(3.98 KB)
📄
MessageBag.php
(9.52 KB)
📄
NamespacedItemResolver.php
(3.19 KB)
📄
Optional.php
(2.58 KB)
📄
Pluralizer.php
(3.13 KB)
📄
ProcessUtils.php
(2 KB)
📄
Reflector.php
(1.34 KB)
📄
ServiceProvider.php
(9.29 KB)
📄
Str.php
(17.95 KB)
📄
Stringable.php
(15.12 KB)
📁
Testing
📁
Traits
📄
ViewErrorBag.php
(2.56 KB)
📄
composer.json
(1.5 KB)
📄
helpers.php
(13.22 KB)
Editing: NamespacedItemResolver.php
<?php namespace Illuminate\Support; class NamespacedItemResolver { /** * A cache of the parsed items. * * @var array */ protected $parsed = []; /** * Parse a key into namespace, group, and item. * * @param string $key * @return array */ public function parseKey($key) { // If we've already parsed the given key, we'll return the cached version we // already have, as this will save us some processing. We cache off every // key we parse so we can quickly return it on all subsequent requests. if (isset($this->parsed[$key])) { return $this->parsed[$key]; } // If the key does not contain a double colon, it means the key is not in a // namespace, and is just a regular configuration item. Namespaces are a // tool for organizing configuration items for things such as modules. if (strpos($key, '::') === false) { $segments = explode('.', $key); $parsed = $this->parseBasicSegments($segments); } else { $parsed = $this->parseNamespacedSegments($key); } // Once we have the parsed array of this key's elements, such as its groups // and namespace, we will cache each array inside a simple list that has // the key and the parsed array for quick look-ups for later requests. return $this->parsed[$key] = $parsed; } /** * Parse an array of basic segments. * * @param array $segments * @return array */ protected function parseBasicSegments(array $segments) { // The first segment in a basic array will always be the group, so we can go // ahead and grab that segment. If there is only one total segment we are // just pulling an entire group out of the array and not a single item. $group = $segments[0]; // If there is more than one segment in this group, it means we are pulling // a specific item out of a group and will need to return this item name // as well as the group so we know which item to pull from the arrays. $item = count($segments) === 1 ? null : implode('.', array_slice($segments, 1)); return [null, $group, $item]; } /** * Parse an array of namespaced segments. * * @param string $key * @return array */ protected function parseNamespacedSegments($key) { [$namespace, $item] = explode('::', $key); // First we'll just explode the first segment to get the namespace and group // since the item should be in the remaining segments. Once we have these // two pieces of data we can proceed with parsing out the item's value. $itemSegments = explode('.', $item); $groupAndItem = array_slice( $this->parseBasicSegments($itemSegments), 1 ); return array_merge([$namespace], $groupAndItem); } /** * Set the parsed value of a key. * * @param string $key * @param array $parsed * @return void */ public function setParsedKey($key, $parsed) { $this->parsed[$key] = $parsed; } }
Upload File
Create Folder