Вот две функции bb-кодов
function bbcode($mes){
$mes = stripslashes($mes);
$mes = preg_replace('#\[cit\](.*?)\[/cit\]#si', '<div class="cit">\1</div>', $mes);
$mes = preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-weight: bold;">\1</span>', $mes);
// и так далее
}
и http://profiwm.ru/codes/code.php?id=295
Какую функцию и когда предпочтительнее использовать?
Добавлено 17.03.17 в 11:00:11:
Какая с них когда предпочтительнее? Я имею в виду по нагрузке, и скорости. По идее, когда мало кодов, то лучше первый стиль, а если много, то второй. Или я ошибаюсь? Разница то незначительна вообще. Но всё же?
Для множества (более одного) бб кодов - - второй вариант.
Но его можно упростить, не вызывать array_keys и array_values.
А создать два отдельных массива..
$patterns = [] и $replacements = [] и заполнить их соответствующими значениями, в первом шаблоны, во втором замены.
Работать наверное будет быстрее, но если есть много бб кодов, то нужно будет искать значения по счету сравнивая два массива, неудобно.
bibilink, a если записывать
$bb[1] = 'bb';
$to[1] = 'html';
$bb[2] = 'bb2';
$to[2] = 'html2';
$bb[3] = 'bb3';
$to[3] = 'html3';
?
Так выбираешь, будто у тебя миллионная аудитория на сайте, сервер которого по характеристикам как тетрис.
Зачем ключи указывать явно (как в документации), если при создании массива пхп создаст их динамично в памяти.
Добавлено 17.03.17 в 22:22:07:
Хотя, если так удобнее редактировать, то да наверное.
bibilink, так?
$bb[] = 'bb';
$to[] = 'html';
$bb[] = 'bb2';
$to[] = 'html2';
$bb[] = 'bb3';
$to[] = 'html3';
?
SV, имел ввиду
$bb = ['one, 'two'];
$html = ['one', 'two'];
чисто за ради траллинга, а зачем тебе два массива если можно использовать один?
$arr[] = array('bb'=>'bb', 'to' =>'html');
Простите за мою старомодность в коде ) Но на целый 1 массив меньше будет же! какое снижение нагрузки! ШОК
Ren™, а зачем создавать очередной говнокод в стиле dcms ?
шта ???? $bb[] = 'bb';
$to[] = 'html';
$bb[] = 'bb2';
$to[] = 'html2';
$bb[] = 'bb3';
$to[] = 'html3';
по твоему не говнокод а то что я предлагаю говнокод? ясно.