Studly Words in Laravel
In Laravel, the Support\Str class has a lot of useful methods for switching formats of strings between each other.  I needed to take a hyphenated slug and change it to title case words.  In Laravel land, I think this is referred to as “Studly” - because I found something very similar called Str::studly().  This converts underline or hyphenated words into a single string with capital letters.  I wanted to not concatenate all of these.
To be clear, I wanted to convert something like something-is-here to Something Is Here - the closest I could find in Laravel made it SomethingIsHere which is not very good for a sentence.
So, following the Laravel namespace convention, I created my own Str class which augments the existing one to add this functionality:
<?php
/**
 * Our own string helper functions as well
 */
declare(strict_types=1);
namespace App\Support;
/**
 * Class Str
 * @package App\Support
 */
class Str extends \Illuminate\Support\Str
{
  /**
   * The cache of studly-cased word strings.
   *
   * @var array
   */
  protected static $studlyWordCache = [];
  /**
   * Convert snake case to studly words
   * 
   * ex: something_here to Something Here
   * 
   * @param $value
   * @return mixed|string
   */
  public static function studlyWords($value)
  {
    $key = $value;
    if (isset(static::$studlyWordCache[$key])) {
      return static::$studlyWordCache[$key];
    }
        
    return static::$studlyWordCache[$key] = ucwords(str_replace(['-', '_'], ' ', $value));
  }
}
To be clear, I might have chosen to do it slightly different, but in this case I decided to follow their paradigm.  In the end, the only real difference between this method and the studly one in the base class is a lack of removing the final spaces after ucwords.