• Изменение элемента в многомерном массиве разной рамерностью?

    Рекурсия в помощь.
    function r_array_search($needle, $haystack, $currentKey = "") {
        foreach ($haystack as $key => $value) {
            if (is_array($value)) {
                $nextKey = r_array_search($needle, $value, $currentKey . "[{$key}]");            
                if ($nextKey) {
                    return $nextKey;
                }
            } else if ($value == $needle) {
                return is_numeric($key) ? $currentKey . "[{$key}]" : $currentKey . "['{$key}']";
            }
        }
        return false;
    }
    
    $GLOBAL = [
        3515 => [
            'sub_categories' => [
                22916 => [
                    'sub_categories' => [
                        33221 => 'test'
                    ]
                ],
            ]
        ],
        35215 => [
            'sub_categories' => [
                221916 => 'test2'
            ]
        ],
    ];
    
    print_r(r_array_search("test", $GLOBAL));
    
    //[3515][sub_categories][22916][sub_categories][33221]
    Ответ написан
    2 комментария
  • Gulp и несколько сайтов?

    Krasnodar_etc
    @Krasnodar_etc
    fundraiseup
    Обычно всё таки свой gulpfile для каждого сайта - это достаточно удобно, перешёл в директорию, ввёл gulp и всё отлично. Но ничего не мешает сделать разграничения в одном файле.
    Первое, что приходит в голову - сделать для каждого сайта свой "большой" таск, в котором вызывать остальные нужные таски. Минусы: для каждого нового сайта нужен будет отдельный таск. Плюсы: изменения в структуре одного сайта (и его таска) не затронут больше ничего

    Да, было бы логично положить в site ... Но можно, например, сделать структуру:
    -project
    --site1
    --- .....
    --gulpfile.js
    Ответ написан
    3 комментария