for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php namespace Modules\Media\ValueObjects;
use Modules\Media\UrlResolvers\BaseUrlResolver;
class MediaPath
{
/**
* @var string
*/
private $path;
public function __construct($path)
if (! is_string($path)) {
throw new \InvalidArgumentException('The path must be a string');
}
$this->path = $path;
* Get the URL depending on configured disk
* @return string
public function getUrl()
return (new BaseUrlResolver())->resolve($this->path);
public function getRelativeUrl()
return $this->path;
public function __toString()
try {
return $this->getUrl();
} catch (\Exception $e) {
return '';