Как определить, сколько времени потребуется на прочтение статьи или текста на сайте
Функция определения времени чтения — это удобный инструмент, который позволяет пользователям оценить, сколько времени им понадобится на ознакомление с материалом. Если вы хотите добавить эту функцию на свой сайт и вам нужно передать задачу разработчику, мы можем помочь вам с этим. В конце есть пример реализации на PHP.
Чтобы рассчитать время, необходимое для прочтения статьи, используйте следующую формулу:
Скорость чтения взрослого человека в среднем составляет 1500 знаков в минуту. Чтобы вычислить, сколько времени потребуется на прочтение статьи, нужно разделить общее количество знаков в тексте на 1500. Это даст нам приблизительное количество минут, необходимое для чтения.
Также стоит учесть, что каждая картинка увеличивает общее время на +0,2 минуты. После всех расчётов результат следует округлить до большего целого числа, если оно превышает 0,3. Это сделано для того, чтобы не слишком занижать ожидания тех, кто читает медленнее среднего.
Например у нас есть статья на 4315 знаков с двумя картинками:
4315/1500=2,87
2,87+0,2×2 картинки= 3,27
Округляем до 3 минут чтения.
Если бы знаков было 4 350, то мы бы получили 4 минуты чтения, округлив 3,3 до 4.
Не рекомендую рассчитывать время чтения на основе аналитики, поскольку это усложнит реализацию простой функции. Цель времени чтения — дать человеку примерное представление о том, сколько времени займёт чтение материала. Высокая точность здесь не требуется.
Кроме того, пользователи могут недочитать текст, отойти на перерыв, долго рассматривать изображения. Учитывать эти факторы в расчётах нецелесообразно.
Чтобы рассчитать время чтения статьи на PHP, можно использовать следующий подход:
Вернуться к блогу
Чтобы рассчитать время, необходимое для прочтения статьи, используйте следующую формулу:
Скорость чтения взрослого человека в среднем составляет 1500 знаков в минуту. Чтобы вычислить, сколько времени потребуется на прочтение статьи, нужно разделить общее количество знаков в тексте на 1500. Это даст нам приблизительное количество минут, необходимое для чтения.
Также стоит учесть, что каждая картинка увеличивает общее время на +0,2 минуты. После всех расчётов результат следует округлить до большего целого числа, если оно превышает 0,3. Это сделано для того, чтобы не слишком занижать ожидания тех, кто читает медленнее среднего.
Например у нас есть статья на 4315 знаков с двумя картинками:
4315/1500=2,87
2,87+0,2×2 картинки= 3,27
Округляем до 3 минут чтения.
Если бы знаков было 4 350, то мы бы получили 4 минуты чтения, округлив 3,3 до 4.
Не рекомендую рассчитывать время чтения на основе аналитики, поскольку это усложнит реализацию простой функции. Цель времени чтения — дать человеку примерное представление о том, сколько времени займёт чтение материала. Высокая точность здесь не требуется.
Кроме того, пользователи могут недочитать текст, отойти на перерыв, долго рассматривать изображения. Учитывать эти факторы в расчётах нецелесообразно.
Чтобы рассчитать время чтения статьи на PHP, можно использовать следующий подход:
- Определите функцию calculateReadingTime, которая принимает текст статьи и опционально скорость чтения в словах в минуту (по умолчанию 1500 слов в минуту).
- Внутри функции разделите текст на отдельные слова с помощью str_word_count или count(preg_split('/\s+/', strip_tags($text))), чтобы учесть все слова в тексте.
- Вычислите ориентировочное время чтения, разделив общее количество слов на скорость чтения.
- Используйте команду echo для вывода результата.
function calculateReadingTime($text, $wordsPerMinute = 1500) {
$words = str_word_count(strip_tags($text));
$readingTime = ceil($words / $wordsPerMinute);
return $readingTime;
}
$articleText = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed commodo nisl eu elit tincidunt, sed lobortis odio commodo. Sed consectetur, elit nec viverra pellentesque, mi felis cursus justo, at porttitor urna diam id mauris. Fusce viverra nisl ut ante dapibus eleifend.";
$readingTime = calculateReadingTime($articleText);
echo "Время чтения статьи: " . $readingTime . " минут(ы)";
Этот код определит время чтения статьи, учитывая количество слов в тексте и заданную скорость чтения.