Что проку от функции strtok()
в PHP? Как лучше, чем другая строковая функция, делающая то же самое?
Не существует другой строковой функции, которая делает то же самое. Такие функции, как explode
, возвращают полную разделенную строку в массиве. strtok
, с другой стороны, возвращает только один фрагмент за раз, при этом каждый последующий вызов возвращает следующий фрагмент. Это потенциально гораздо более экономично и экономит память для больших строк.
$addr=strtok($_SERVER['REQUEST_URI'],'?');
, но не называйте это «лучше». это просто еще один способ сделать это.
strtok
предпочтительнее других функций, когда вам нужно разделить строку на более чем один разделитель.
Другие функции, такие как preg_split, split основаны на regex и имеют связанные с ними накладные расходы.