Проблемы числовых значений с высокими значениями, а не с низкими значениями
Код (проблема возникает в третьей строке):
$post_count = bbp_get_topic_reply_count();
$post_count = $post_count++;
$page_count = round($post_count / 15 );
if (!empty($_POST['jump_page'])) {
$jump_page = $_POST['jump_page'];
$topic_id = bbp_get_topic_id();
header('Location: https://url/?p=' . $topic_id . '&paged=' . $jump_page);
}
if ( $page_count > 4) {
//do something
когда $page_count
дает низкое значение, нет проблем. Не знаю точно когда, но когда $page_count
должен дать высокое значение, я получаю следующее уведомление: неправильно сформированное числовое значение, встречающееся в /.../...
Я пытался заменить 15
со строкой и round($post_count / 15)
с:
intdiv($post_count, 15)
var_dump(round($post_count / 15)
var_dump(int_div($post_count, 15)
Некоторая помощь будет высоко ценится.
1 ответ
Решение
Для тех, кто наткнулся на этот пост, это было решение:
bbp_get_topic_reply_count()
дает значение с запятой. Итак, я изменился:
$post_count = bbp_get_topic_reply_count();
$post_count = $post_count++;
$page_count = round($post_count / 15 );
в
$post_count = str_replace(',', '', bbp_get_topic_reply_count());
$post_count++;
$page_count = ceil($post_count / 15 );