Skip to content

Commit e0c1083

Browse files
committed
Leverage str_ends_with
added the php80 polyfill to requirements when necessary
1 parent 918a576 commit e0c1083

File tree

6 files changed

+7
-6
lines changed

6 files changed

+7
-6
lines changed

Dumper/PhpDumper.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -504,7 +504,7 @@ private function collectLineage(string $class, array &$lineage)
504504
return;
505505
}
506506
$file = $r->getFileName();
507-
if (') : eval()\'d code' === substr($file, -17)) {
507+
if (str_ends_with($file, ') : eval()\'d code')) {
508508
$file = substr($file, 0, strrpos($file, '(', -17));
509509
}
510510
if (!$file || $this->doExport($file) === $exportedFile = $this->export($file)) {
@@ -2095,7 +2095,7 @@ private function doExport($value, bool $resolveEnv = false)
20952095

20962096
if ($resolveEnv && "'" === $export[0] && $export !== $resolvedExport = $this->container->resolveEnvPlaceholders($export, "'.\$this->getEnv('string:%s').'")) {
20972097
$export = $resolvedExport;
2098-
if (".''" === substr($export, -3)) {
2098+
if (str_ends_with($export, ".''")) {
20992099
$export = substr($export, 0, -3);
21002100
if ("'" === $export[1]) {
21012101
$export = substr_replace($export, '', 18, 7);

Extension/Extension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public function getNamespace()
6666
public function getAlias()
6767
{
6868
$className = static::class;
69-
if ('Extension' != substr($className, -9)) {
69+
if (!str_ends_with($className, 'Extension')) {
7070
throw new BadMethodCallException('This extension does not follow the naming convention; you must overwrite the getAlias() method.');
7171
}
7272
$classBaseName = substr(strrchr($className, '\\'), 1, -9);

Loader/DirectoryLoader.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,6 @@ public function supports($resource, $type = null)
4949
return true;
5050
}
5151

52-
return null === $type && \is_string($resource) && '/' === substr($resource, -1);
52+
return null === $type && \is_string($resource) && str_ends_with($resource, '/');
5353
}
5454
}

Loader/FileLoader.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public function import($resource, $type = null, $ignoreErrors = false, $sourceRe
9191
*/
9292
public function registerClasses(Definition $prototype, $namespace, $resource, $exclude = null)
9393
{
94-
if ('\\' !== substr($namespace, -1)) {
94+
if (!str_ends_with($namespace, '\\')) {
9595
throw new InvalidArgumentException(sprintf('Namespace prefix must end with a "\\": "%s".', $namespace));
9696
}
9797
if (!preg_match('/^(?:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*+\\\\)++$/', $namespace)) {

ParameterBag/EnvPlaceholderParameterBag.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ class EnvPlaceholderParameterBag extends ParameterBag
3131
*/
3232
public function get($name)
3333
{
34-
if (0 === strpos($name, 'env(') && ')' === substr($name, -1) && 'env()' !== $name) {
34+
if (0 === strpos($name, 'env(') && str_ends_with($name, ')') && 'env()' !== $name) {
3535
$env = substr($name, 4, -1);
3636

3737
if (isset($this->envPlaceholders[$env])) {

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"require": {
1919
"php": ">=7.1.3",
2020
"psr/container": "^1.0",
21+
"symfony/polyfill-php80": "^1.16",
2122
"symfony/service-contracts": "^1.1.6|^2"
2223
},
2324
"require-dev": {

0 commit comments

Comments
 (0)