• Sudo: add-apt-repository: command not found. Что делать?

    @a_alexeev
    sudo apt-get install software-properties-common python-software-properties
    Ответ написан
    Комментировать
  • Неправильно работает скрипт, что я делаю не так?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Проблем у тебя две
    1. Ты используешь mysqli, а должен использовать PDO
    2. Самая главная проблема - ты не читаешь описание функции в документации. За это в хороших местах бьют линейкой по пальцам. То есть вот ты сам себе выдумываешь назначение функции, втюхиваешь ее себе в код, а потом удивляешься, почему ничего не работает! Ну так естественно, что не работает - и не должно.

    В общем, так как ты хочешь, работает в PDO функция fetchAll(). Поэтому быстро переходишь на PDO. Как соединяться написано здесь, а код переписываешь так:
    $data = $db->query('SELECT * FROM news');
    foreach($data as $res){
    Ответ написан
    Комментировать
  • Как сделать removeAttr по выбору radio?

    Petroveg
    @Petroveg
    Миром правят маленькие с#@&ки
    $(document).on('change', '[name="merchant"]', function (e) {
    	$('#send').prop('disabled', !this.checked);
    });
    Ответ написан
    Комментировать
  • Как проверить строку на сбалансированность скобок?

    SHVV
    @SHVV
    Ололошки уже три ответа и ни одного правильного.
    function isBalanced(str) {
        // пары открывающих-закрывающих скобок
        var br = "(){}[]";
        // стек открытых скобок
        var st = [];
        // бежим по всей строке
        for (var i = 0; i < str.length; ++i) {
            // текущий символ
            var ch = str[i];
            // ищем символ в скобках
            var ind = br.indexOf(ch);
            // если скобка найдена
            if (ind >= 0) {
                // проверяем, какая это скобка
                if (ind & 1) {
                    // если закрывающая скобка, проверяем стек
                    // стек пуст - плохо
                    if (!st.length) return false;
                    // извлекаем последнюю открытую скобку из стека
                    var last_br = st.pop();
                    // если она не соответствует закрывающей скобке - тоже плохо
                    if (last_br != br[ind - 1]) return false;
                } else { 
                    // открывающую скобку просто пихаем в стек
                    st.push(ch);
                }
            }
        }
        // если после обхода всей строки стек пуст - всё ок
        return !st.length;
    }

    Проверять тут.
    Ответ написан
    2 комментария
  • Ищу класс функцию для перебора всех возможных вариантов строки

    @torchello
    Недавно на Хабре проскакивал топик. Ссылку не сохранил, только код:
    <?
    
    $str = "{Пожалуйста|Просто} сделайте так, чтобы это {удивительное|крутое|простое} тестовое предложение {изменялось {быстро|мгновенно} случайным образом|менялось каждый раз}";
    $finishStrs = array();
    
    getVariants($str);
    
    function getVariants($str) {
        global $finishStrs;
        $strs = array();
        
        
        if(preg_match("~\{([^{}]+)\}~siU", $str, $m)) {
            
            $foundExpression = $m[1];
            
            $currentVariants = explode("|", $foundExpression);
            
            foreach($currentVariants as $var) {
                $strs[] = str_replace('{'.$foundExpression.'}', $var, $str);
            }
            
            foreach($strs as $currentStr) {
                if(preg_match("~\{([^{}]+)\}~siU", $currentStr, $m)) {
                    getVariants($currentStr);
                } else {
                    $finishStrs[] = $currentStr;
                }
            }
                   
        } else {
            $finishStrs = $str;
        }     
    
        
    }
    
    print_r($finishStrs);
    
    Ответ написан
    Комментировать