Я создаю функцию, более похожую на substr, и используя идею @Dave.
function substr_full_word($str, $start, $end){
$pos_ini = ($start == 0) ? $start : stripos(substr($str, $start, $end), ' ') + $start;
if(strlen($str) > $end){ $pos_end = strrpos(substr($str, 0, ($end + 1)), ' '); } // IF STRING SIZE IS LESSER THAN END
if(empty($pos_end)){ $pos_end = $end; } // FALLBACK
return substr($str, $pos_ini, $pos_end);
}
Ps .: Полное сокращение длины может быть меньше, чем substr.
Установите свойство Format элемента управления, связанного с выражением (в вашем вопросе), равным:
mmmm d, yyyy