Это не может быть сделано в PHP - лучшее, что вы можете сделать, это приблизительное.Различные браузеры и разные операционные системы отображают ширину шрифта для одного и того же шрифта по-разному.Поэтому, даже если вы вручную сохранили массив ширины шрифта символа для шрифта в своем браузере и ОС, он может не совпадать с другими.
Обычно лучше работать над дизайном с возможностью использования шрифтов различной ширинычем пытаться заставить его.
При этом, это может быть сделано идеально (без приближения) в javascript, хотя и с небольшим количеством взлома.Есть несколько возможных методов, но вот один: начните с визуализации полной строки в div с шириной, которую вы ищете, затем измерьте высоту div.Если это больше, чем одна строка, возможно, тогда начните цикл, постепенно удаляя последнее слово.Продолжайте, пока высота делителя не станет равной одной строке.