Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как оптимизировать?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
event
Отправлено: 16 Февраля, 2016 - 09:58:55
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Написал самописный сайтик, вот сейчас начал оптимизировать кое где код, чтобы ускорить работу сайту.

Есть такой код:

PHP:
скопировать код в буфер обмена
  1. $language = explode("/", $_SERVER['REQUEST_URI']);
  2. $language = $language[1];
  3.  
  4. if($language == "ru") {
  5.         $lang = "2";
  6.         require_once(SYSTEM_DIR . "languages/lang_russian/lang_main.php");
  7. } else {
  8.         require_once(SYSTEM_DIR . "languages/lang_ukrainian/lang_main.php");
  9.         $lang = "1";
  10. }


Он узнает какой язык нужно отдать читателю. Как можно его оптимизировать?

Можно ли посадить эту часть кода на memache?
 
 Top
Мелкий Супермодератор
Отправлено: 16 Февраля, 2016 - 10:36:17
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




event пишет:
оптимизировать кое где код, чтобы ускорить работу сайту.

xdebug + kcachegrind
Всё равно не угадаете, где именно теряете время.

Здесь ускорять нечего. А вот причесать - вполне, Заменить какие-то магические строки 1 и 2 на константы. Сделать словарь значений языка и соответствующего обозначения языкового файла.


-----
PostgreSQL DBA
 
 Top
event
Отправлено: 16 Февраля, 2016 - 10:56:15
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




[quote=Мелкий]
event пишет:
Сделать словарь значений языка и соответствующего обозначения языкового файла.


Это я уже сделал.
 
 Top
TuX560
Отправлено: 16 Февраля, 2016 - 11:40:46
Post Id


Гость


Покинул форум
Сообщений всего: 114
Дата рег-ции: Дек. 2015  


Помог: 3 раз(а)




для профилирования пользовался XHprof, удобно, наглядно. Профилирование PHP с XHprof
 
 Top
event
Отправлено: 16 Февраля, 2016 - 14:59:21
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Есть еще такой цикл, мне кажется наговнокодил здесь. Можно что-то изменить или нормально?

PHP:
скопировать код в буфер обмена
  1. <li class="validation">
  2. <h2>Про що читати?</h2>
  3. </li>
  4. <li> <a href="/<?=$lang_two;?>/news">Усі новини</a> </li>
  5.  
  6. <?PHP
  7.  
  8. $categories_news = categories_news();
  9.  
  10. $i = 0;
  11.  
  12. foreach($categories_news as $row) {
  13.        
  14. $i++;
  15.  
  16. if($i <= 8) {
  17.         echo "<li><a href=\"#\">" . $row['name'] . "</a></li>";
  18. }
  19.  
  20. if($i == 8) {
  21.         echo "</ul>
  22. </li>
  23. <li>
  24. <ul><li class=\"validation\">
  25. <h2>...</h2>
  26. </li>";
  27. }
  28.  
  29. if($i > 8) {
  30.         echo "<li><a href=\"#\">" . $row['name'] . "</a></li>";
  31. }
  32.  
  33. } ?>
  34. </ul>
  35. </li>
  36. </ul>
  37. </li>
 
 Top
andrewkard
Отправлено: 16 Февраля, 2016 - 17:09:24
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Убрать echo, foreach заменить на for (если нужен $i), в чем разница $i <= 8 и $i > 8?
Поставить отступы.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB