Str
class Str (View source)
Traits
Properties
static protected array | $macros | The registered string macros. |
from Macroable |
static protected array | $snakeCache | The cache of snake-cased words. |
|
static protected array | $camelCache | The cache of camel-cased words. |
|
static protected array | $studlyCache | The cache of studly-cased words. |
|
static protected callable|null | $uuidFactory | The callback that should be used to generate UUIDs. |
|
static protected callable|null | $randomStringFactory | The callback that should be used to generate random strings. |
Methods
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Get a new stringable object from the given string.
Return the remainder of a string after the first occurrence of a given value.
Return the remainder of a string after the last occurrence of a given value.
Transliterate a UTF-8 value to ASCII.
Transliterate a string to its closest ASCII representation.
Get the portion of a string before the first occurrence of a given value.
Get the portion of a string before the last occurrence of a given value.
Get the portion of a string between two given values.
Get the smallest possible portion of a string between two given values.
Convert a value to camel case.
Determine if a given string contains a given substring.
Determine if a given string contains all array values.
Determine if a given string ends with a given substring.
Extracts an excerpt from text that matches the first instance of a phrase.
Cap a string with a single instance of a given value.
Wrap the string with the given strings.
Determine if a given string matches a given pattern.
Determine if a given string is 7 bit ASCII.
Determine if a given string is valid JSON.
Determine if a given string is a valid UUID.
Determine if a given string is a valid ULID.
Convert a string to kebab case.
Return the length of the given string.
Limit the number of characters in a string.
Convert the given string to lower-case.
Limit the number of words in a string.
Converts GitHub flavored Markdown into HTML.
Converts inline Markdown into HTML.
Masks a portion of a string with a repeated character.
Get the string matching the given pattern.
Get the string matching the given pattern.
Pad both sides of a string with another.
Pad the left side of a string with another.
Pad the right side of a string with another.
Parse a Class[@]method style callback into class and method.
Pluralize the last word of an English, studly caps case string.
Generate a more truly "random" alpha-numeric string.
Set the callable that will be used to generate random strings.
Set the sequence that will be used to generate random strings.
Indicate that random strings should be created normally and not using a custom factory.
Repeat the given string.
Replace a given value in the string sequentially with an array.
Replace the given value in the given string.
Replace the first occurrence of a given value in the string.
Replace the last occurrence of a given value in the string.
Remove any occurrence of the given string in the subject.
Reverse the given string.
Begin a string with a single instance of a given value.
Convert the given string to upper-case.
Convert the given string to title case.
Convert the given string to title case for each word.
Get the singular form of an English word.
Generate a URL friendly "slug" from a given string.
Convert a string to snake case.
Remove all "extra" blank space from the given string.
Determine if a given string starts with a given substring.
Convert a value to studly caps case.
Returns the portion of the string specified by the start and length parameters.
Returns the number of substring occurrences.
Replace text within a portion of a string.
Swap multiple keywords in a string with other keywords.
Make a string's first character lowercase.
Make a string's first character uppercase.
Split a string into pieces by uppercase characters.
Get the number of words a string contains.
Generate a UUID (version 4).
Generate a time-ordered UUID (version 4).
Set the callable that will be used to generate UUIDs.
Set the sequence that will be used to generate UUIDs.
Indicate that UUIDs should be created normally and not using a custom factory.
Generate a ULID.
Remove all strings from the casing caches.
Details
static void
macro(string $name, object|callable $macro)
Register a custom macro.
static void
mixin(object $mixin, bool $replace = true)
Mix another object into the class.
static bool
hasMacro(string $name)
Checks if macro is registered.
static void
flushMacros()
Flush the existing macros.
static mixed
__callStatic(string $method, array $parameters)
Dynamically handle calls to the class.
mixed
__call(string $method, array $parameters)
Dynamically handle calls to the class.
static Stringable
of(string $string)
Get a new stringable object from the given string.
static string
after(string $subject, string $search)
Return the remainder of a string after the first occurrence of a given value.
static string
afterLast(string $subject, string $search)
Return the remainder of a string after the last occurrence of a given value.
static string
ascii(string $value, string $language = 'en')
Transliterate a UTF-8 value to ASCII.
static string
transliterate(string $string, string|null $unknown = '?', bool|null $strict = false)
Transliterate a string to its closest ASCII representation.
static string
before(string $subject, string $search)
Get the portion of a string before the first occurrence of a given value.
static string
beforeLast(string $subject, string $search)
Get the portion of a string before the last occurrence of a given value.
static string
between(string $subject, string $from, string $to)
Get the portion of a string between two given values.
static string
betweenFirst(string $subject, string $from, string $to)
Get the smallest possible portion of a string between two given values.
static string
camel(string $value)
Convert a value to camel case.
static bool
contains(string $haystack, string|iterable<string> $needles, bool $ignoreCase = false)
Determine if a given string contains a given substring.
static bool
containsAll(string $haystack, iterable<string> $needles, bool $ignoreCase = false)
Determine if a given string contains all array values.
static bool
endsWith(string $haystack, string|iterable<string> $needles)
Determine if a given string ends with a given substring.
static string|null
excerpt(string $text, string $phrase = '', array $options = [])
Extracts an excerpt from text that matches the first instance of a phrase.
static string
finish(string $value, string $cap)
Cap a string with a single instance of a given value.
static string
wrap(string $value, string $before, string|null $after = null)
Wrap the string with the given strings.
static bool
is(string|iterable<string> $pattern, string $value)
Determine if a given string matches a given pattern.
static bool
isAscii(string $value)
Determine if a given string is 7 bit ASCII.
static bool
isJson(string $value)
Determine if a given string is valid JSON.
static bool
isUuid(string $value)
Determine if a given string is a valid UUID.
static bool
isUlid(string $value)
Determine if a given string is a valid ULID.
static string
kebab(string $value)
Convert a string to kebab case.
static int
length(string $value, string|null $encoding = null)
Return the length of the given string.
static string
limit(string $value, int $limit = 100, string $end = '...')
Limit the number of characters in a string.
static string
lower(string $value)
Convert the given string to lower-case.
static string
words(string $value, int $words = 100, string $end = '...')
Limit the number of words in a string.
static string
markdown(string $string, array $options = [])
Converts GitHub flavored Markdown into HTML.
static string
inlineMarkdown(string $string, array $options = [])
Converts inline Markdown into HTML.
static string
mask(string $string, string $character, int $index, int|null $length = null, string $encoding = 'UTF-8')
Masks a portion of a string with a repeated character.
static string
match(string $pattern, string $subject)
Get the string matching the given pattern.
static Collection
matchAll(string $pattern, string $subject)
Get the string matching the given pattern.
static string
padBoth(string $value, int $length, string $pad = ' ')
Pad both sides of a string with another.
static string
padLeft(string $value, int $length, string $pad = ' ')
Pad the left side of a string with another.
static string
padRight(string $value, int $length, string $pad = ' ')
Pad the right side of a string with another.
static array<int,string|null>
parseCallback(string $callback, string|null $default = null)
Parse a Class[@]method style callback into class and method.
static string
plural(string $value, int|array|Countable $count = 2)
Get the plural form of an English word.
static string
pluralStudly(string $value, int|array|Countable $count = 2)
Pluralize the last word of an English, studly caps case string.
static string
random(int $length = 16)
Generate a more truly "random" alpha-numeric string.
static void
createRandomStringsUsing(callable $factory = null)
Set the callable that will be used to generate random strings.
static void
createRandomStringsUsingSequence(array $sequence, callable|null $whenMissing = null)
Set the sequence that will be used to generate random strings.
static void
createRandomStringsNormally()
Indicate that random strings should be created normally and not using a custom factory.
static string
repeat(string $string, int $times)
Repeat the given string.
static string
replaceArray(string $search, iterable<string> $replace, string $subject)
Replace a given value in the string sequentially with an array.
static string
replace(string|iterable<string> $search, string|iterable<string> $replace, string|iterable<string> $subject)
Replace the given value in the given string.
static string
replaceFirst(string $search, string $replace, string $subject)
Replace the first occurrence of a given value in the string.
static string
replaceLast(string $search, string $replace, string $subject)
Replace the last occurrence of a given value in the string.
static string
remove(string|iterable<string> $search, string $subject, bool $caseSensitive = true)
Remove any occurrence of the given string in the subject.
static string
reverse(string $value)
Reverse the given string.
static string
start(string $value, string $prefix)
Begin a string with a single instance of a given value.
static string
upper(string $value)
Convert the given string to upper-case.
static string
title(string $value)
Convert the given string to title case.
static string
headline(string $value)
Convert the given string to title case for each word.
static string
singular(string $value)
Get the singular form of an English word.
static string
slug(string $title, string $separator = '-', string|null $language = 'en', array<string,string> $dictionary = ['@' => 'at'])
Generate a URL friendly "slug" from a given string.
static string
snake(string $value, string $delimiter = '_')
Convert a string to snake case.
static string
squish(string $value)
Remove all "extra" blank space from the given string.
static bool
startsWith(string $haystack, string|iterable<string> $needles)
Determine if a given string starts with a given substring.
static string
studly(string $value)
Convert a value to studly caps case.
static string
substr(string $string, int $start, int|null $length = null, string $encoding = 'UTF-8')
Returns the portion of the string specified by the start and length parameters.
static int
substrCount(string $haystack, string $needle, int $offset = 0, int|null $length = null)
Returns the number of substring occurrences.
static string|string[]
substrReplace(string|string[] $string, string|string[] $replace, int|int[] $offset = 0, int|int[]|null $length = null)
Replace text within a portion of a string.
static string
swap(array $map, string $subject)
Swap multiple keywords in a string with other keywords.
static string
lcfirst(string $string)
Make a string's first character lowercase.
static string
ucfirst(string $string)
Make a string's first character uppercase.
static string[]
ucsplit(string $string)
Split a string into pieces by uppercase characters.
static int
wordCount(string $string, string|null $characters = null)
Get the number of words a string contains.
static UuidInterface
uuid()
Generate a UUID (version 4).
static UuidInterface
orderedUuid()
Generate a time-ordered UUID (version 4).
static void
createUuidsUsing(callable $factory = null)
Set the callable that will be used to generate UUIDs.
static void
createUuidsUsingSequence(array $sequence, callable|null $whenMissing = null)
Set the sequence that will be used to generate UUIDs.
static UuidInterface
freezeUuids(Closure $callback = null)
Always return the same UUID when generating new UUIDs.
static void
createUuidsNormally()
Indicate that UUIDs should be created normally and not using a custom factory.
static Ulid
ulid()
Generate a ULID.
static void
flushCache()
Remove all strings from the casing caches.