Вставка чего-либо перед последней найденной подстрокой в строке на PHP
Имеем какую-то строку, а в ней повторяющуюся часть. Нужно перед самой последней такой частью что-либо вставить.
Решение:
// Page content $content = '<html><head></head><body></body></html>' $additionalContent = array( '<script src="/assets/js/jquery-ui.min.js"></script>', '<script src="/assets/js/script.js"></script>' ); $htmlCodeBlock = '<p>Some text</p>'; if (is_scalar($htmlCodeBlock) && strlen(trim($htmlCodeBlock))) { $additionalContent[] = $htmlCodeBlock; } if (!empty($additionalContent)) { $replaceTag = '</body>'; if (($pos = strrpos($content, $replaceTag)) !== false) { $content = implode('', array( substr($content, 0, $pos), sprintf("\n%s\n", implode("\n", $additionalContent)), substr($content, $pos) )); } }
В моём случае, я ставлю после последнего закрывающего </body>