Евгений Борисов

Евгений Борисов

С нами с 17 декабря 2012; Место в рейтинге пользователей: #38
13 августа 2019, 20:46
0
GraphQL выглядит немного неуместно для PHP. Как и для любого другого серверного языка. А вот для JS самое оно. Фронтэндеру не нужно разбираться в связях и типах. Всё прописано в схемах.

Я думаю это видео немного изменит твое мнение www.youtube.com/watch?v=ViB_lA54gqk
13 августа 2019, 20:00
+1
github.com/railt/railt/releases ну, а что касается продакшина, все относительно. В любом случае, на новых технологиях я бы не рискнул делать сложный проект. А так, ради поиграться если нужно что-то не очень сложное — очень даже ничего себе.

Один только факт того, что проект качественно покрывается тестами — уже о многом говорит.
13 августа 2019, 13:37
0
Проще и быстрее будет сделать написать сниппет внутри которого получите 2 выборки из разных родителей. А затем средствами PHP перемешаете. Куралесить подобные SQL запросы внутри MODX тегов идея так себе.
13 августа 2019, 10:37
1
+3
Все таки попробую GraphQL, только на ларке

Посмотри в сторону railt github.com/railt/laravel-provider пилит его Кирилл Несмеянов — Активный участник Laravel сообщества.

Так же, советую к просмотру его доклад www.youtube.com/watch?v=wCfuvB-uPNE
12 августа 2019, 14:41
+2
ru.railt.org/ в тот же вектор попадает.
12 августа 2019, 12:15
1
0
Не путай божий дар с яичницей. Обсуждение в данной ветке комментариев вообще не относится к твоему топику. Оно относится лишь к сравнению PHP и JS.

Если сравнение русского и английского языка ты принял на свой счет в плане орфографии, то это говорит лишь о том, что ты читаешь по диагонали все, что тебе пытаются донести. Мой посыл был в том, что синтаксис абсолютно разный в русском и английском. Даже слова, похожие по написанию отличаются. Но это не говорит о том, что английски/русский плох — они просто разные. Точно так же и в контексте PHP/JS.

Возможно твои мысли где-то и верные, но аргументация вообще не из той области. Развивая тему с undefined, в том ключе который тебе нужен, то в php это решается так
<?php function a(...$b){var_dump($b);}
Но мне в любом случае не удастся тебе донести мысль, что твои аргументы не продуманы и их нельзя даже использовать, поскольку лишь отображают или поверхностные знания, или не структурированный набор информации в головном мозге.

Для пущей убедительности была дана ссылка на документацию JS, где главная мысль это одна строка
Ранее для проверки и задания стандартных значений использовалось тело функции, где параметры сравнивались с undefined
Точно так же, как как и переменное количество параметров в PHP добавлено лишь с версии 5.6.
Это не говорит о том, что PHP плох или JS хорош. Это говорит лишь о том, что каждый язык развивается с оглядкой на другие языки. Поэтому наличие какой-то «фитчи» в PHP это еще не обязательно костыль. Точно так же, как и наличие «фитчи» в JS это не всегда «возможности». Языки просто разные и то, что делается в одном языке — не обязательно применимо к другому.

Возвращаясь к сравнению аглийского с русским, получается, что
— в англйском языке gallery с двумя буквами L это фитча. А в русском — возможность! Возможность писать слово короче, а значит быстрее.
— Или же все-таки галерея это фитча, т.к. слово словарное и его нужно специально запоминать. А в английском — возможность. Возможность писать слово так, как оно слишится

Ну и наконец
Или вот: (![] +[])[+!![]] = 'а'
А как насчет этого? blog.sucuri.net/2013/09/ask-sucuri-non-alphanumeric-backdoors.html
Магия есть везде. Запомни это.
12 августа 2019, 10:58
0
Ты не понял. В js это «возможности», а в php — беда. )
Я примерно так и понял. Просто многие аргументы в стиле там мне не нравится, а тут нравится. И тем не менее, undefined зачастую используется в ключе
foo === undefined чтобы проверить была ли вообще передана переменная (в php аналог isset).
Тем не менее, developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Functions/Default_parameters

И это нужно только потому, что в JS можно упустить некоторые аргументы функций. А вот PHP выдаст ошибку. monosnap.com/file/SMXbyW9Hf6Nt6RglMF0drYg2fIxawk Так что изначально во всех аргументах были упущены особенности одного и другого языка и стали сравнивать не сравнимое.

Это как сравнивать английский с русским
  • галерея => gallery
  • адрес => address
  • паспорт => passport
12 августа 2019, 10:38
0
Наверное, уже ничего. Разработка сайтов под лозунгом «через терни к звездам» мне не подходит, а клепать сайтики на потоке не вдохновляет.

Единственное, для чего я еще могу рассматривать modx, так это быстрое прототипирование будущего проекта. Но за последние лет 7 подобный подход применял лишь 2 раза.
12 августа 2019, 07:48
0
Я знаю как работает Sphinx. Вопрос был в стеммерах и использовании в связке. Но я уже понял, что это не пробовалось.

Я такого не нашёл. Есть только pymorphy2, но он на Python и его ни разу не использовал.
Его и имел в виду
11 августа 2019, 20:56
+1
Добро пожаловать в ряды наблюдателей:-)

Лично я ушел из MODX уже очень давно. Но поскольку этой CMS посвятил не мало времени, как и ты, то слежу за развитием.

Не скрою, временами накрывает желание помочь, но тем не менее, ни Evo, ни Revo за последние годы в работе даже не пытался применить. Поэтому уверен, что равнодушное отношение к проекту ты обретешь еще не скоро.
11 августа 2019, 20:49
+1
Жаль, что не взлетело. До сих пор восхищаюсь твоим энтузиазмом и способностью изучать/развивать OpenSource продукты. Не раз смотрел в сторону Mattermost по твоей рекомендации для коммерческих продуктов, но так и не решился попробовать в деле.

Ну, а что касается буржуйских заметок — ЧТД. Горячие статьи именно на русском языке и к обсуждению присоединяются все. Поэтому в отдельной локализации смысла нет.
11 августа 2019, 20:42
+1
А как насчет связки phpMorphy + Sphinx? Так же интересно узнать про опыт использования phpMorphy2 для нормализации контента под индексацию.
11 августа 2019, 14:18
2
+5
Универсального средства нет. Все сугубо индивидуально
— Различные капчи обходятся при помощи rucaptcha.com/ или подобных сервисов
— От явных спамеров которые используют proxy листы/tor помогает www.stopforumspam.com
— Для защиты от матов и прочего бреда можно составить черный список слов
— Чтобы дополнительно отсеять спамеров с временными почтовыми ящиками можно составить список доменов github.com/TicketeStartup/temp-mail-check/blob/master/disposable-email-domains.json естественно, он будет не полный. И этот способ подойдет скорее для защиты от левых регистраций.

В любом случае, если вас решили целенаправленно заспамить, то это сделают. Но в 90% случаев данных мер достаточно.
11 августа 2019, 13:42
0
Перечитай внимательно свои комментарии. Мысли прыгают с 5 на 10. Начали за == в php. Потом резко на === в JS. И дальше все в таком же ключе твоего собственного опыта. О чем это говорит? Это говорит о том, что в PHP знания ниже среднего. Так чего ты тут усердно доказываешь своими комментариями?
11 августа 2019, 12:55
+3
Бред сивой кобылы. Для начала откроем таблицу dorey.github.io/JavaScript-Equality-Table/ и убедимся, что сравнение == это беда не только PHP, но и JS.

Затем подтянем PHP и познакомимся с declare(strict_types = 1);
<?php declare(strict_types = 1);

function test(int $id) {
	return $id;
}

var_dump(test(2));
var_dump(test("2"));
После чего осознаем чем отличается функциональное программирование от ООП. Опробуем код на деле
$obj = new class {
	protected $a = null;
};
var_dump(property_exists($obj, 'a')); // true
var_dump(property_exists($obj, 'b')); // false
09 июня 2019, 16:32
0
Посмотрите внимательно пример уязвимого скрипта из статьи

$tpl = $modx->getOption(
    'tpl',
    $_REQUEST,
    $modx->getOption('tpl', $scriptProperties, 'DefaultChunk')
);
Если я изменю текст с
Есть 2 варианта реализации подобного функционала — создать 2 разных страницы. Или принимать способ отображения через GET параметр.
на
Есть 2 варианта реализации подобного функционала — создать 2 разных страницы. Или принимать способ отображения через REQUEST параметр.
Вы по прежнему будете доказывать, что способов больше чем 2?
09 июня 2019, 11:23
0
Если вы решили показать какой умный, то не удалось
1) $_REQUEST это GET/POST/COOKIE
2) Подменить данные в кукисах так же просто, как и в GET

Еще вопросы?
13 мая 2019, 20:37
0
Можно расшифровать фразу
Laravel очень компромисный фреймворк
А то мне тут на ум пришло, что MODX очень коллегиальный движок.
Если без сарказма, то серьезно, что подразумевалось под этой фразой?
— Если Laravel = фасады, то не используй их
— Несмотря на то, что сам фреймворк позволяет делать проекты не оглядываясь на паттерны, под капотом многие вещи сделаны очень даже толково. При этом лапшекода в ядре уж точно нет, чего не скажешь про MODX
— Фреймворк использует слабую связанность компонентов и их можно использовать по отдельности. В то время, как MODX жестко завязан на xPDO, а шаблонизатор/роутинг/логи и бла-бла явно в шиты в ядро
08 февраля 2019, 12:14
0
Посмотрите порядок вызова плагинов на этом событии. Скорее всего, до нужного вам дело просто не доходит.