Контакты

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (8)

Лучшие ответы пользователя

Все ответы (7)
  • Расположение кода при работе с Doctrine?

    Обычно, бизенс-логику выносят в отдельный слой. Напишите классы-сервисы, куда и поместите свою бизнес-логику. Где они будут лежать и как называться - это, по сути, ваше дело уже. А сами сервисы потом уже инжектите в контроллеры и вызывайте нужные вам методы.
    Ответ написан
    6 комментариев
  • Какой индекс поставить в таблицу mysql?

    При построении составных индексов учитывайте то, какой объем данных у вас будет попадать на первый и второй индекс. Выполнив два запроса SELECT lastname_id, count(*) FROM t GROUP BY lastname_id и SELECT firstname_id, count(*) FROM t GROUP BY firstname_id , можно увидеть, сколько записей содержит каждое значение колонки в таблице. Там, где меньше - ту колонку и нужно ставить первой в индекс, так как если среднее кол-во значений lastname_id будет равно 1000, а firstname_id - 20000, то MySQL сразу сократит количество перебираемых записей до 1000, вместо 20000.

    Так же советую почитать про EXPLAIN - очень помогает находить тяжелые запросы и лучше понять, как MySQL делает поиск.
    Ответ написан
  • Сколько записей может максимально храниться в таблице?

    Я не слышал о том, чтобы в MySQL был на уровне ядра какой-то лимит на кол-во записей. Тут все зависит от того, какой объем вашего накопителя. Что касается 1 млн записей, то это не много, средний размер таблицы на более-менее highload проекте - 10-30 млн. На моем проекте есть таблицы с 300+ млн. записей и все ок. Если у вас вопрос о том, насколько трудно будет делать выборки по таким таблицам, то тут нужно правильно проектировать структуру таблиц, думать над индексами и оптимизировать запросы, тема достаточно обширная, можете на этот счет найти много информации в интернете.
    Ответ написан
    Комментировать
  • How to join from another tabel?

    ON company_type.id = companies.company_type_id
    Ответ написан
    Комментировать
  • Хочу разобраться в коде данного скрипта. Как выдернуть элемент из массива в данном примере?

    $file в вашем случае не массив, а объект SimpleXMLElement, он наполнен данными из xml файла, сам класс SimpleXMLElement имплементирует интерфейс Traversable, что позволяет ему использоваться в цикле foreach, $el - также объект типа SimpleXMLElement, доступ к его полям можно получить напрямую, как тут $el->CharCode, это работает через магический метод __get(). __toString() - метод, который приводит объект SimpleXMLElement к строке.
    Чтобы подробнее понять, как он работает и что есть внутри, загляните в класс SimpleXMLElement и посмотрите, что там есть, тогда станет понятнее.

    Что касается кода, то можно записать как-то так:

    $file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . date("d/m/Y"));
    
            $values = [];
    
            foreach ($file as $el) {
                if ($el->CharCode == 'USD' || $el->CharCode == 'EUR') {
                    $values[$el->CharCode->__toString()] = $el->Value->__toString();
                }
            }
            print_r($values);
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (15)