Профиль пользователя заблокирован сроком с 12 апреля 2022 г. и навсегда по причине: спам
  • Как сделать множественное изменение значений в php файлах?

    irishmann
    @irishmann
    Научись пользоваться дебаггером
    Открыть все файлы, например, в Notepad++, выделить то что нужно заменить, выбрать на панели инструмент замены, ввести на что хотим изменить, нажать кнопочку заменить во всех открытых.
    Сработает при условии, что во всех файлах искомая строка написано одинаково.
    Ответ написан
    1 комментарий
  • Как не выводить повторяющиеся данные?

    irishmann
    @irishmann
    Научись пользоваться дебаггером
    $s = 'test, test, test2';
    $s = explode(', ', $s);
    $s =  array_unique($s);
    $s = implode(', ', $s); // обратно в строку
    Ответ написан
    Комментировать
  • Что лучше использовать RedBeanPHP или фреймворк?

    sandu2d
    @sandu2d
    Человек
    Что нравится то и используй. Всё равно в начале пути одно говно будешь делать как и все мы :)
    Ответ написан
    1 комментарий
  • Как узнать кто пробуждает HDD?

    Комментировать
  • Как вывести погоду на сайт?

    mosesfender
    @mosesfender
    Меланхолик, параноик, падал с коек
    Вот, например, сервис.
    Чтобы совсем уж бесплатно было, можно результат на часок кэшировать.
    Зарегистрируйся, получи apikey, и получай. Работает шустро, особой падучей не замечено.
    Новосибирска ID - 1496747
    Это для запроса по ID. «By city ID»

    Возвращает что-то типа
    {
        "coord": {
            "lon": 82.93,
            "lat": 55.04
        },
        "weather": [
            {
                "id": 800,
                "main": "Clear",
                "description": "clear sky",
                "icon": "01d"
            }
        ],
        "base": "stations",
        "main": {
            "temp": 276.15,
            "pressure": 1017,
            "humidity": 55,
            "temp_min": 276.15,
            "temp_max": 276.15
        },
        "visibility": 10000,
        "wind": {
            "speed": 4,
            "deg": 50
        },
        "clouds": {
            "all": 0
        },
        "dt": 1554442200,
        "sys": {
            "type": 1,
            "id": 8958,
            "message": 0.0039,
            "country": "RU",
            "sunrise": 1554421871,
            "sunset": 1554469844
        },
        "id": 1496747,
        "name": "Novosibirsk",
        "cod": 200
    }
    Ответ написан
    Комментировать
  • Как использовать на своем сайте данные с чужого сайта?

    crashxd
    @crashxd
    Backend разработчик
    Используй Stylish.
    Можешь на любой сайт написать свою обертку стилей.

    Если у сайта есть API, то можешь написать свой полноценный фронтенд.
    Если нет API, то нужно парсить страницы по запросам.
    Ответ написан
    Комментировать
  • Есть ли смысл от CSV при большом объеме данных?

    CSV хорош в качестве механизма транспорта данных. Например, выложить дамп БД куда-нибудь, отчет какой-то и т.д. Он компактнее JSON для табличных данных.
    А хранить данные лучше в СУБД. Это хороший случай для использования SQLite.
    Ответ написан
    Комментировать
  • Есть ли смысл от CSV при большом объеме данных?

    sim3x
    @sim3x
    Есть смысл, особенно если хорошо гзипнуть файл
    Есть смысл хранить в постгресе, если по полям происходит активная выборка, фильтрация и тп

    десятков тысяч строк
    не являются большим обьемом
    Ответ написан
    3 комментария
  • Что делает аргумент [-1] метода rsplit?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Это не аргумент, а отрицательный индекс списка, который возвращает rsplit
    In [1]: url = 'http://demositecom/4f5D6x.txt'
    
    In [2]: url.rsplit('/', 1)
    Out[2]: ['http://demositecom', '4f5D6x.txt']
    
    In [3]: ['http://demositecom', '4f5D6x.txt'][-1]
    Out[3]: '4f5D6x.txt'

    То есть код разбивает строку по символу '/' и берёт первый элемент с конца.
    Ответ написан
    2 комментария
  • Как вызвать метод однократно?

    @balamyt92
    ; select * from users; --
    <?php
    
    class Example {
      private $run = false;
      public function example() {
        if($this->run) {
          throw new Exception('method is runing');
        }
        $this->run = true;
        echo 'run example';
      }
    }
    
    $a = new Example();
    $a->example();
    $a->example();
    Ответ написан
    1 комментарий
  • Насколько актуально учить Java по книге Изучаем Java ( Кэти Сьерра и Берт Бейтс)?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    На дворе Java 12, зарелизят уже через неделю. У Java полная обратная совместимость, актуальны даже книги по Java 1.2. А для новичка нет лучше, чем учебники серии Head First.
    Ответ написан
  • Почему не вычисляется значение типа Long?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Есть две взаимосвязанных причины такого поведения. Во-первых, спецификация языка, стандартизирующая факт того, что перемножение int'ов даёт int:

    When an operator applies binary numeric promotion to a pair of operands, each of which must denote a value that is convertible to a numeric type, the following rules apply, in order:
    1. If any operand is of a reference type, it is subjected to unboxing conversion (§5.1.8).
    2. Widening primitive conversion (§5.1.2) is applied to convert either or both operands as specified by the following rules:
      • If either operand is of type double, the other is converted to double.
      • Otherwise, if either operand is of type float, the other is converted to float.
      • Otherwise, if either operand is of type long, the other is converted to long.
      • Otherwise, both operands are converted to type int.


    After the conversion(s), if any, value set conversion (§5.1.13) is then applied to each operand.

    Binary numeric promotion is performed on the operands of certain operators:
    • The multiplicative operators *, /, and % (§15.17)
    • ...

    Во-вторых, принципы работы стековых виртуальных машин. Вот так выглядит байткод метода main:
    public static void main(java.lang.String[]);
        descriptor: ([Ljava/lang/String;)V
        flags: ACC_PUBLIC, ACC_STATIC
        Code:
          stack=4, locals=6, args_size=1
             0: ldc           #2   // int 300000
             2: istore_1
             3: getstatic     #3   // Field java/lang/System.out:Ljava/io/PrintStream;
             6: ldc           #4   // String Input days:
             8: invokevirtual #5   // Method java/io/PrintStream.print:(Ljava/lang/String;)V
            11: new           #6   // class java/util/Scanner
            14: dup
            15: getstatic     #7   // Field java/lang/System.in:Ljava/io/InputStream;
            18: invokespecial #8   // Method java/util/Scanner."<init>":(Ljava/io/InputStream;)V
            21: astore        5
            23: aload         5
            25: invokevirtual #9   // Method java/util/Scanner.nextInt:()I
            28: istore        4
            30: iload         4
            32: ldc           #10  // int 86400
            34: imul
            35: iload_1
            36: imul
            37: i2l
            38: lstore_2
            39: getstatic     #3   // Field java/lang/System.out:Ljava/io/PrintStream;
            42: new           #11  // class java/lang/StringBuilder
            45: dup
            46: invokespecial #12  // Method java/lang/StringBuilder."<init>":()V
            49: ldc           #13  // String Light distance:
            51: invokevirtual #14  // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            54: lload_2
            55: invokevirtual #15  // Method java/lang/StringBuilder.append:(J)Ljava/lang/StringBuilder;
            58: ldc           #16  // String  km.
            60: invokevirtual #14  // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            63: invokevirtual #17  // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
            66: invokevirtual #18  // Method java/io/PrintStream.println:(Ljava/lang/String;)V
            69: return
         LocalVariableTable:
           Start  Length  Slot  Name   Signature
               0      70     0  args   [Ljava/lang/String;
               3      67     1 lightSpeed   I
              39      31     2 calculatedDistance   J
              30      40     4 runningTime   I
              23      47     5 input   Ljava/util/Scanner;

    Интересны смещения с 30-го по 38-е. В стек загружаются два целых числа, перемножаются операцией imul, в результате которой с вершины стека убираются исходные два числа и помещается результат их перемножения, загружается ещё одно, ещё раз перемножаются, потом значение на вершине стека приводится к long операцией i2l и сохраняется в переменную calculatedDistance. Естественно, если результат работы imul окажется слишком большим, то произойдёт переполнение.

    Исправить это легко, достаточно изменить тип константы:
    calculatedDistance = runningTime * 86400L * lightSpeed;

    Тогда компилятор выберет другие опкоды, оперирующие long'ами:
    30: iload         4
    32: i2l
    33: ldc2_w        #10  // long 86400l
    36: lmul
    37: iload_1
    38: i2l
    39: lmul
    40: lstore_2
    Ответ написан
    2 комментария
  • Какую книгу выбрать для изучения C#?

    mshak
    @mshak
    Рихтер - Clr Via C#. Заодно сразу снимутся вопросы связанные с переходом с языка с утиной типизации, на строготипизированный.
    Ответ написан
  • Можно ли программировать просто ради кода?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    а тем, что тебе просто интересно придумывать алгоритмы к задачкам, интерфейс которых не выходит за рамки командной строки?

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

    Чтобы писать алгоритмы и при этом не программировать, нужно писать очень крутые алгоритмы.

    Например напишите сортировку, которая будет работать быстрее, чем например quicksort (https://ru.wikipedia.org/wiki/%D0%91%D1%8B%D1%81%D...

    Напишите алгоритм архивации, который сожмет лучше чем хотя бы дефолтный 7zip, да хотя бы лучше чем дефолтный zip.

    Напишите свою реализацию криптования sha2

    А уже потом посмотрим, действительно ли вам нравится работать с алгоритмами, или вы прокрастинируете в тайне от самого себя.
    Ответ написан
    8 комментариев
  • ЧПУ url как у вк?

    @MaksPaverov
    .htaccess:
    RewriteEngine On
        RewriteBase /
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /index.php [L]


    index.php:
    <?php
        $url = explode('/',strtolower(substr($_SERVER['REQUEST_URI'], 1)));
    
        switch($url[0]) {
            case '': { 
                include 'pages/main.php';
                break;
            }
            case 'how_to_buy':{
                include 'pages/how_to_buy.php';
                break;
            }
            case 'payment_methods':{
                include 'pages/payment_methods.php';
                break;
            }
            case 'guarantees':{
                include 'pages/guarantees.php';
                break;
            }
            case 'payment':{
                include 'pages/payment.php';
                break;
            }
            case 'myorders':{
                include 'pages/myorders.php';
                break;
            }
        }
    ?>
    Ответ написан
    1 комментарий
  • Почему не происходит событие submit?

    @kupurim
    Добавить кнопку в саму форму?
    <input id="save-utility" type="submit" form="add-utility" value="Сохранить изменения">

    Или же обработчик на клик
    $('#save-utility').on('click',(function(e) {
        console.log('We are in JS');
    }));
    Ответ написан
    Комментировать
  • Есть ли смысл монтировать /home на другой диск?

    kotomyava
    @kotomyava
    Системный администратор
    В /homе, обычно, приложения не устанавливаются. Там хранятся настройки приложений(что может быть важно для скорости их запуска, хотя обычно не очень), файлы пользователя и.т.п.
    Если хочется потерять достоинства ssd для всего этого, то можно и смонтировать /home на hdd. Но лучше сделать хранилище для тяжёлых файлов не требующих быстрого доступа отдельно, а /home оставить на ssd всё же.
    Ответ написан
    Комментировать
  • Есть ли смысл монтировать /home на другой диск?

    longclaps
    @longclaps
    У меня так.
    А пользовательские приложения устанавливаю на ssd, в специально для этого созданную подпапку папки /usr
    Ответ написан
    Комментировать
  • Как проанализировать объекты в приложении?

    qlkvg
    @qlkvg
    python backend developer
    Ответ написан
    Комментировать
  • Существуют ли НЕ видеоуроки по различным ЯП?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Есть такие штуки, книги называются, раньше говорят было модно.
    Ответ написан
    9 комментариев