Максимално време за зареждане (30сек)->Fatal error

vinsbg

Registered
Получавам тази грешка
Код:
Fatal error: Maximum execution time of 30 seconds exceeded
Това е кода
Код:
$ran = mysqli_query($con, "SELECT * from oke order by RAND() LIMIT 0,1");
        while ($res = mysqli_fetch_assoc($ran))
        {
            function getExcerpt($text,$length = 120,$direction = "down") {
                while ( !in_array(mb_substr($text,$length,1,'UTF-8'),array(' ')) ) {
                    $direction == "down" ? $length-- : $length++;
                }
                return mb_substr($text,0,$length,'UTF-8');
            }
            echo getExcerpt(nl2br($res['text'])) . "<br /><br />";
        }
Знам, че мога да го оправя, като му добавя
Код:
ini_set('max_execution_time', 300); // 300 секунди или друга стойност
или да променя настройките в php.ini, но това не е решение, защото страницата ще зарежда .. 5 минути ..
По-скоро ако някой има идея как да се оправи? Това е целия код, който прави проблема.
 
Здравей,
какво трябва да прави getExcerpt() ?
Имаш един while цикъл (вторият), на който условието реално винаги ще е изпълнено тъй като търсиш 'нещо' в празен масив. Според мен от този цикъл няма излизане, може и да бъркам.
И още нещо. Извади дефиницията на функцията извън тялото на първият while, не виждам смисъл да се дефинира на всяка итерация, само губиш време от това.
Поздрави.
 
imagination каза:
Здравей,
какво трябва да прави getExcerpt() ?

Трябва да съкрати текста, както в случая на 120 символа, но без да реже думата, когато стигне 120-те символа. Да среже преди или след нея.

Код:
$ran = mysqli_query($con, "SELECT * from oke order by RAND() LIMIT 0,1");

       function getExcerpt($text,$length = 120) {
           return mb_substr($text,0,$length,'UTF-8');
       }
        while ($res = mysqli_fetch_assoc($ran))
        {
           echo getExcerpt(nl2br($res['text'])) . "<br /><br />";
        }
Така?
 
Здравей,
и така ли бави ?
Аз няма как да видя реално, на 'външен вид' изглежда добре.
Поздрави.
 
imagination каза:
Здравей,
и така ли бави ?
Аз няма как да видя реално, на 'външен вид' изглежда добре.
Поздрави.
Доста си поиграх и мисля, че така не бави.
 

Back
Горе