Map
Форумы / Вопросы по IT / ПХПшники ООПшники скок сюды!, Поиск: Искать сообщения, созданные автором: didgik / 8 сообщений из 8, страница 1 из 1  
30.01.2019, 14:14
    #923198
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
Есть у меня некий говнокод виджета. Вот думаю, как это лучше оформить в виде класса? Пока пользуюсь только статическими классами типа как пространства имен. Все хочу перелезть на ООП, но не придумаю зачем.
Код: PHP
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
<?
   global $g_otr;
   $query = "select * from log__sector_by_year2 where sector_id between 1 and 26 and sector_id<>21";
    $result = mysql_query_ex($query);

    while( $row = mysql_fetch_assoc($result) ){
      $tbl_sector[$row["sector_id"]][$row["year"]] = $row["news_count"]."/".$row["look_news_count"];
    }

    foreach($tbl_sector as $sector_id =>$row){
      $tbl_sector[$sector_id]["name"] = $g_otr[$sector_id]["name"];
      $tbl_sector[$sector_id]["news_count"] = $g_otr[$sector_id]["news_count"];
      $tbl_sector[$sector_id]["look_news_count"] = $g_otr[$sector_id]["look_news_count"];
    }

    function cmp_function($a, $b){
      return ($a['look_news_count'] < $b['look_news_count']);
    }

    uasort($tbl_sector, 'cmp_function');

  $gv_top = "SELECT ns, count(*) as kolvo FROM `library_log` where ns in(999,99,9999,15) group by ns order by kolvo desc";

  $result = mysql_query_ex($gv_top);
  while($row = mysql_fetch_array($result)){
    $gv_data[$row["ns"]] = $row["kolvo"];
  }

  $stat_data["Non-fiction"]["kolvo"] = $gv_data["15"];
  $stat_data["Госвласть"]["kolvo"] = $gv_data["99"] + $gv_data["999"] + $gv_data["9999"]+5000;

  $site_top2="SELECT  count(*)  FROM `log__sites`";
  $stat_data["Сайты мира"]["kolvo"] = mysql_result(mysql_query_ex($site_top2),0,0);
?>
Данные на <?=date("d.m.Y")?>, число статей в базе данных / топ-лист скачиваний документов читателями библиотек.
<table cellspacing="0" cellpadding="3" bordercolor="#c0c0c0" border="1" align="left" style="border-collapse: collapse; width: 100%; margin-bottom:20px">
<tbody><tr>
<td width="25%"></td><td>Всего</td>
<?for($y = date("Y"); $y > 2007; $y--):?>
    <td><?=$y?></td>
<?endfor?>

</tr>
  <?foreach($tbl_sector as $sector_id =>$row):?>
  <tr>
    <td><?=$row["name"]?></td>
    <td><?=$row["news_count"]?>/<b><?=$row["look_news_count"]?></b></td>
<?for($y = date("Y"); $y > 2007; $y--):?>
    <td><?=$row[$y]?></td>
<?endfor?>
  </tr>
  <?endforeach?>

  <?foreach($stat_data as $otr_name=>$value):?>
  <tr>
    <td><?=$otr_name?></td>
    <td><b><?=$value["kolvo"]?></b></td>
  </tr>
  <?endforeach?>

</tbody></table>

<div style="clear:both"></div>
...
Рейтинг: 0 / 0
30.01.2019, 14:34
    #923290
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
listtoview, не гони.
...
Рейтинг: 0 / 0
30.01.2019, 16:29
    #923708
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
По идее нам же не нужно создавать класс Сайт, он же в единственном экземпляре всегда. Класс Страница тоже не нужен. Одномоментно страница тоже только одна. Вот меню, может быть несколько, так же как и виджетов и всяких текстовых блоков.
...
Рейтинг: 0 / 0
30.01.2019, 17:31
    #923952
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
listtoview модель чего?
...
Рейтинг: 0 / 0
30.01.2019, 22:28
    #925038
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
Green2  30.01.2019, 19:33
didgik  30.01.2019, 17:31
listtoview модель чего?
Модель это специальное слово,
часть такой модели программирования модель - это класс, в которой сохраняются данные
Просмотр - это класс, ответственный за просмотр
Контроллер, это класс, ответственный за действия.
Я немного в курсе про MVC, но она мне не нравиться. Тем более в контексте сайта. Какое на сайте М? Там только V. [:biggrin]
...
Рейтинг: 0 / 0
04.02.2019, 13:59
    #936614
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
Никита Олегович Кулешов, иди в жопу. Спасибо.
...
Рейтинг: 0 / 0
04.02.2019, 14:36
    #936745
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
listtoview  04.02.2019, 14:31
didgik  04.02.2019, 13:59
Никита Олегович Кулешов, иди в жопу. Спасибо.
Валя, ты что ли?
Нет же. Это Никита Олегович Кулешов.
...
Рейтинг: 0 / 0
04.02.2019, 15:52
    #937004
didgik
Участник
Скрыть профиль Поместить в игнор-лист
Вопросы по IT / ПХПшники ООПшники скок сюды!
listtoview  04.02.2019, 15:45
didgik  04.02.2019, 14:36
listtoview  04.02.2019, 14:31
...
Нет же. Это Никита Олегович Кулешов.
Валя хитре чем ты думаешь о конвертаторе
Я не думаю о конвертаторе. Я думаю об ООП в ПХП.
...
Рейтинг: 0 / 0
Форумы / Вопросы по IT / ПХПшники ООПшники скок сюды!, Поиск: Искать сообщения, созданные автором: didgik / 8 сообщений из 8, страница 1 из 1  
Пользователи онлайн (7): Анонимы (4), Barkrowler, Yandex Bot, Bing Bot
Целевая тема:
Создать новую тему:
Автор:
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]