$re = '/@php\((.*?)\)(?= @php|$|\\\\r|\\\\n)/m';
$str = '@php($hiddenUrl = !empty($hiddenUrl) ?? false)\\r\\n
<span class="info__item">\\r\\n
@if($hiddenUrl)\\r\\n
<div class="info__icon" style="background-image: url(\'{{ $image }}\');" title="{{ $name }}"></div>\\r\\n
@else\\r\\n
<a class="info__icon" style="background-image: url(\'{{ $image }}\');" href="{{ $url }}" title="{{ $name }}"></a>\\r\\n
@endif\\r\\n
</span>';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php