"Дефис слова", о котором вы говорите, вероятно, является тире.Это не стандартный символ ascii, что означает, что ваша проблема, вероятно, связана с кодировкой символов.
Либо закодируйте все расширенные символы в вашей строке как HTML-сущности, используя PHP htmlentities () Функция, или иначе убедитесь, что весь ваш контент обслуживается как UTF-8.