<?php

$text = 'Të$ting slugificatiön';
    
// construct the pipeline
$valuePlaceholder = new stdClass;
$pipeline = array(
    array('preg_replace', array('~[^\\pL\d]+~u', '-', $valuePlaceholder)),
    array('trim', array($valuePlaceholder, '-')),
    array('iconv', array('utf-8', 'us-ascii//TRANSLIT', $valuePlaceholder)),
    // etc etc
);

// process it
$value = $text;
foreach ($pipeline as $stage) {
    list($callable, $parameters) = $stage;
    foreach ($parameters as &$parameter) {
        if ($parameter === $valuePlaceholder) {
            $parameter = $value;
        }
    }
    $value = call_user_func_array($callable, $parameters);
}

// final result
echo $value;

?>