Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Stringy Laravel Package

danielstjules/stringy

Stringy is a PHP library for Unicode-safe string manipulation with a fluent, object-oriented API. Chain helpers for trimming, casing, substrings, padding, replacing, slugifying, and more, without worrying about multibyte issues.

View on GitHub
Deep Wiki
Context7
3.1.0
  • Add $language support to slugify
  • Add bg specific transliteration
  • ЬЪ/ьъ handling is now language-specific
3.0.1
  • Don't replace @ in toAscii
  • Use normal replacement for @ in slugify, e.g. user@home => user-home
3.0.0
  • Breaking change: added $language parameter to toAscii, before $removeUnsupported
  • Breaking change: dropped PHP 5.3 support
  • Breaking change: any StaticStringy methods that previously returned instances of Stringy now return strings
2.4.0
  • Add startsWithAny
  • Add endsWithAny
  • Add stripWhitespace
  • Fix error handling for unsupported encodings
  • Change private methods to protected for extending class
  • Fix safeTruncate for strings without spaces
  • Additional char support in toAscii, e.g. full width chars and wide non-breaking space
2.3.2
  • Improve support without mbstring
2.3.1
  • Always use root namespace for mbstring functions
2.3.0
  • Add Persian characters in Stringy::charsArray()
  • Use symfony/polyfill-mbstring to avoid dependency on ext-mbstring
2.2.0
  • isJSON now returns false for empty strings
  • Update for German umlaut transformation
  • Use reflection to generate method list for StaticStringy
  • Added isBase64 method
  • Improved toAscii char coverage
2.1.0
  • Added simplified StaticStringy class
  • str in Stringy::create and constructor is now optional
2.0.0
  • Removed StaticStringy class
  • Added append, prepend, toBoolean, repeat, between, slice, split, and lines
  • camelize/upperCamelize now strip leading dashes and underscores
  • titleize converts to lowercase, thus no longer preserving acronyms
1.10.0
  • Added trimLeft, trimRight
  • Added support for unicode whitespace to trim
  • Added delimit
  • Added indexOf and indexOfLast
  • Added htmlEncode and htmlDecode
  • Added "Ç" in toAscii()
1.9.0
  • Added hasUpperCase and hasLowerCase
  • Added $removeUnsupported parameter to toAscii()
  • Improved toAscii support with additional Unicode spaces, Vietnamese chars, and numerous other characters
  • Separated the charsArray from toAscii as a protected method that may be extended by inheriting classes
  • Chars array is cached for better performance
1.8.1
  • Optimized chars()
  • Added "ä Ä Ö Ü"" in toAscii()
  • Added support for Unicode spaces in toAscii()
  • Replaced instances of self::create() with static::create()
  • Added missing test cases for safeTruncate() and longestCommonSuffix()
  • Updated Stringy\create() to avoid collision when it already exists
1.8.0
  • Listed ext-mbstring in composer.json
  • Added Stringy\create function for PHP 5.6
1.7.0
  • Added containsAll and containsAny
  • Light cleanup
1.6.0
  • Added toTitleCase
1.5.2
  • Announced support for HHVM
1.5.1
  • Fixed toAscii() failing to remove remaining non-ascii characters
  • Updated slugify() to treat dash and underscore as delimiters by default
  • Updated slugify() to remove leading and trailing delimiter, if present
1.5.0
  • Made both str and encoding protected, giving property access to subclasses
  • Added getEncoding()
  • Fixed isJSON() giving false negatives
  • Cleaned up and simplified: replace(), collapseWhitespace(), underscored(), dasherize(), pad(), padLeft(), padRight() and padBoth()
  • Fixed handling consecutive invalid chars in slugify()
  • Removed conflicting hard sign transliteration in toAscii()
1.4.0
  • Implemented the IteratorAggregate interface, added chars()
  • Renamed count() to countSubstr()
  • Updated count() to implement Countable interface
  • Implemented the ArrayAccess interface with positive and negative indices
  • Switched from PSR-0 to PSR-4 autoloading
1.3.0
  • Additional Bulgarian support for toAscii
  • str property made private
  • Constructor casts first argument to string
  • Constructor throws an InvalidArgumentException when given an array
  • Constructor throws an InvalidArgumentException when given an object without a __toString method
1.2.2
  • Updated create function to use late static binding
  • Added optional $replacement param to slugify
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours