Skip to content

Instantly share code, notes, and snippets.

View hsmfawaz's full-sized avatar
🎯
Focusing

Hisham fawaz hsmfawaz

🎯
Focusing
View GitHub Profile
@wilmardo
wilmardo / .php-cs.dist.php
Last active April 6, 2021 20:35
PHP-CS-Fixer matching the Laravel StyleCI rules. The order of rules is the same as here: https://docs.styleci.io/presets#laravel. The linecount of the rules is exactly the same (110 without risky).
<?php
# source: https://docs.styleci.io/presets#laravel
use PhpCsFixer\Config;
use PhpCsFixer\Finder;
$rules = [
'align_multiline_comment' => true,
'ordered_imports' => ['sortAlgorithm' => 'alpha'],
@troatie
troatie / CreatesWithLock.php
Last active September 12, 2023 13:51
Guard against race conditions in Laravel's firstOrCreate and updateOrCreate
trait CreatesWithLock
{
public static function updateOrCreate(array $attributes, array $values = [])
{
return static::advisoryLock(function () use ($attributes, $values) {
// emulate the code found in Illuminate\Database\Eloquent\Builder
return (new static)->newQuery()->updateOrCreate($attributes, $values);
});
}
@AlexPashley
AlexPashley / replace.php
Last active January 25, 2023 23:40
PHP: function that will replace textual URLs with HTML links, this also works for email addresses.
<?php
function replace_links( $text )
{
$text = preg_replace('#(script|about|applet|activex|chrome):#is', "\\1:", $text);
$ret = ' ' . $text;
// Replace Links with http://
$ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"\\2\" target=\"_blank\" rel=\"nofollow\">\\2</a>", $ret);