Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
Palych_tw

Павел

Типа веб-разработчик
  • 241
    вклад
  • 100
    вопросов
  • 295
    ответов
  • 55%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как в PostGIS получить точки внутри заданной площади?

    freeExec
    freeExec @freeExec
    Участник OpenStreetMap
    Из этих координат углов строите линию. Затем ищете пересечение охватывающих прямоугольников для данной линии и ваших точек.
    SELECT * FROM table WHERE geom && 'LINESTRING(0 0, 3 3)'::geometry

    П.С. не забудь правильно указать систему координат.
    Ответ написан более двух лет назад
    6 комментариев
    6 комментариев
  • Можно ли исправить эту очень полезную функцию PHP?

    Ninazu
    Ninazu @Ninazu
    Если уже переписываете, то переписывайте нормально. Избавляйтесь от глобального массива $CONF, рекурсии и функций без неймспейсов. Также у вас функция как записывает так и читает значения, что немного выносит мозг. Также считаю что исключению там не место, лучше заменить на значение по умолчанию

    class Config {
    
    	protected static array $register = [];
    
    	public static function get(string $name, $default = null) {
    		$keys = explode('.', $name);
    
    		$pointer = self::$register;
    
    		foreach ($keys as $key) {
    			if (!array_key_exists($key, $pointer)) {
    				/*Если ключа нет, выставить его*/
    				//self::set($name, $default);
    
    				/*Бросить исключение*/
    				//throw new Exception("No such key: {$name}");
    
    				/*Вернуть значение по умолчанию*/
    				return $default;
    			}
    
    			$pointer = &$pointer[$key];
    		}
    
    		return $pointer;
    	}
    
    	public static function set(string $name, $value = null) {
    		$arr = &self::$register;
    		$keys = explode('.', $name);
    
    		foreach ($keys as $key) {
    			$arr = &$arr[$key];
    		}
    
    		if (is_array($arr) && is_array($value)) {
    			$arr = array_replace_recursive($arr, $value);
    		} else {
    			$arr = $value;
    		}
    	}
    
    	public static function getTree() {
    		return self::$register;
    	}
    }
    
    Config::set("config", [
    	"name" => "test",
    ]);
    print_r(Config::get("config"));
    echo "(config)\n\n";
    
    Config::set("config.class.name", "A");
    print_r(Config::get("config.class.name"));
    echo "\n(config.class.name)\n\n";
    
    Config::set("config", [
    	"class" => [
    		"test" => "B",
    	],
    ]);
    print_r(Config::get("config.class"));
    echo "\n(config.class)\n\n";
    
    Config::set("config.class", null);
    print_r(Config::get("config.class"));
    echo "\n(config.class)\n\n";
    
    print_r(Config::get("config.fake.key.without.value", "UNDEFINED"));
    echo "\n(config.fake.key.without.value)\n\n";
    
    Config::set("config.nullable", null);
    print_r(Config::get("config.nullable", "NULL"));
    echo "\n(config.nullable)\n\n";
    
    print_r(Config::getTree());
    echo "\n(all)\n";


    Работает в PHP7.4
    Ответ написан более двух лет назад
    6 комментариев
    6 комментариев
  • Можно ли исправить эту очень полезную функцию PHP?

    VladimirAndreev
    Андрей @VladimirAndreev
    php web dev
    return aGetByKey($CONF, $key, $value);
    Ответ написан более двух лет назад
    Комментировать
    Комментировать
  • Почему не работает else в wp-query?

    pton
    Пычев Анатолий @pton
    наверное потому, что Ваш have_posts() проверяет результаты глобального запроса.
    Попробуйте проверять Ваш $loop ->have_posts();
    Ответ написан более двух лет назад
    1 комментарий
    1 комментарий
  • Как сделать мультиязычность на сайте Wordpress?

    iamd503
    Евгений @iamd503
    Верстальщик
    Как сделать мультиязычность на сайте Wordpress?
    Ответ написан более двух лет назад
    2 комментария
    2 комментария
  • Как правильно защитить REST маршрут?

    deniscopro
    Денис Янчевский @deniscopro Куратор тега WordPress
    WordPress-разработчик, wpcute.ru
    В WordPress есть обертка для Ajax-запросов к REST API. Можете подключить её в свою тему
    wp_enqueue_script( 'wp-api-request' );

    Ну и потом использовать аналогично jQuery Ajax
    wp.apiRequest({
    	method: 'post',
    	path: 'my-form/send/',
    	data: data,
    	success: function (response) {
    		console.log(response);
    	}
    });

    WordPress сам сгенерирует и отправит csrf-токен по заголовку X-WP-Nonce.

    Подробнее как устроен враппер можно посмотреть в исходниках.
    Ответ написан более двух лет назад
    3 комментария
    3 комментария
  • Как правильно написать ИЛИ в этой регулярке?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    "/$blockStart.*?(?:$blockEnd1|$blockEnd2)/su"
    Ответ написан более двух лет назад
    3 комментария
    3 комментария
  • Почему routes путает контроллеры?

    JhaoDa
    JhaoDa @JhaoDa
    LaravelRUS Team
    Порядок роутов поменяй, а потом почитай документацию и подумай.
    Ответ написан более двух лет назад
    Комментировать
    Комментировать
  • Зачем использовать сессии, если есть куки и https?

    DevMan
    DevMan @DevMan Куратор тега PHP
    вы считаете нормальным гонять постоянно данные при каждом запросе? а именно так и происходит с куками.

    ну и москвакуки - не резиновые, имеют ограничения по размеру.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Простой вопрос с суммированием переменных PHP?

    Kozack
    Alex @Kozack
    Thinking about a11y
    Сначала работайте с числами как с числами — суммируйте как вам нужно — а при выводе — форматируйте так как хотите
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Простой вопрос с суммированием переменных PHP?

    SilenceOfWinter
    Антон Шаманов @SilenceOfWinter
    та еще зажигалка...
    нет такого числа как 0001, для вывода подобного результата можно sprintf использовать
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Простой вопрос с суммированием переменных PHP?

    gangstarcj
    Сергей @gangstarcj
    И правильно. Вам нужно пойти в 1 класс учится, что-бы узнать что числа 0001 не существует. Потом, когда окончите школу, можно почитать информацию о типах данных и узнать что такое целые числа, что такое строки.
    Интерпретатор php переводит строку 0001 в число и получается целое число 1, далее прибавляет единицу и получается 2
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как поймать результат post запроса со стороннего сайта?

    eternalfire @eternalfire
    Привет! Никак.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему FormRequest в Laravel выбрасывает ValidationException вместо массива с ошибками?

    Антон @Yadalay
    Php, Mysql, Html, Css, Js/Jquery/Ajax, Laravel
    https://laravel.com/api/5.7/Illuminate/Foundation/...
    Добавьте в файл метод failedValidation() для обработки ошибок.
    ---
    Может, данная статья поможет.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему не вставляется переменная в функцию?

    eternalfire @eternalfire
    омг - какие ужасные названия переменных, зачем вы вызываете попаболь у коллег?
    используйте общепринятый язык для обозначения переменных - английский
    $vibranye = array_filter($shiny, function (array $arr) use ($parametr_widther) {


    внутри анонимной функции своя область видимости переменных, нужно использовать оператор use
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • КАК Значение переменной php присвоить в массив?

    ThunderCat
    ThunderCat @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    eval('$array1 = array (' . $ro . ");"); 
    $array1 = explode('", "',trim($ro,'"'));
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Как работают переменные в Javascript?

    Vlad_IT
    Владимир Проскурин @Vlad_IT Куратор тега JavaScript
    Front-end разработчик
    конечно выдает до onload, ведь onload это callback, он произойдет после загрузки изображения. У вас код тупо идет дальше.
    Ответ написан более трёх лет назад
    5 комментариев
    5 комментариев
  • Какой плагин лучший? ACF, CMB2, Pods, MetaBox?

    Punkie
    Mr Crabbz @Punkie
    Acf pro - ванлав. Купил девелопер-лицензию много лет назад и бед не знаю. Сэкономил мне не одну тысячу баксов (в счет сэкономленного рабочего времени).
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как объединить 3 массива в 1 многомерный?

    slo_nik
    Дмитрий @slo_nik Куратор тега PHP
    Доброе утро.
    $arr1 = [ 0=>'Петя', 1=>'Коля', 2=>'Вася' ];
    $arr2 = [ 0=>'100руб', 1=>'200руб', 2=>'300руб' ];
    $arr3 = [ 0=>'Москва', 1=>'Тверь', 2=>'Уфа' ];
    function func($a, $b, $c){
        return [$a, $b, $c];
    }
    $result = array_map('func', $arr1, $arr2, $arr3);
    print_r($result);
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Почему в лендинге письмо с формы обратной связи приходит пустое?

    alex-1917
    alex-1917 @alex-1917
    Если ответ помог, отметь решением
    В файл callback.php добавь:

    В начале
    $name = 'Поле имя не заполнено';
    $tel = 'Поле телефон не заполнено';


    в конце что нужно, например
    echo 'Всё гут, БОСС. Письмишко улетело!';

    А в скрипте вот это response.data замени на это response
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • Следующие →
Самые активные сегодня
  • Drno
    • 7 ответов
    • 0 вопросов
  • rPman
    • 5 ответов
    • 0 вопросов
  • sergey-gornostaev
    Сергей Горностаев
    • 5 ответов
    • 0 вопросов
  • Rsa97
    Rsa97
    • 5 ответов
    • 0 вопросов
  • ThunderCat
    ThunderCat
    • 5 ответов
    • 0 вопросов
  • 0xD34F
    0xD34F
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации