мне приходит вебхук в котором лежит json вида
{
...
"itemId":"id"
"itemType":"foo", // "bar", "buzz", etc.
"event":"update", // "create", "delete", etc.
"data":{},
...
}
это удобно обрабатывать статическими методами типа
<?php
Bar::create($json);
Foo::update($json);
/**********************/
Class Foo {
public static updateItem($json) {
$foo = Foo::findMethod($json->itemId);
$foo->updateData($json->data);
etc.
}
public static deleteItem($json) {
$foo = Foo::findMethod($json->itemId);
$foo->delete();
}
}
собственно вопрос: насколько нормальным будет использовать конструктор метода типа
<?php
$className = $jsonReader->getClassName($json); //returns 'Foo'
$methodName = $jsonReader->getMethodName($json); //return 'updateItem'
if (method_exists($className, $methodNаme) {
$classNAme::methodName($json);
}
или лучше использовать гирлянды ифов
if ($json->itemName == 'foo') {
switch ($json->event) {
case 'create':
Foo::createItem($json);
break;
case 'update':
Foo::updateItem($json);
break;
//etc.
}
} else if ($json->itemName == 'bar') {
switch ($json->event) {
case 'create':
Bar::createItem($json);
break;
case 'update':
Bar::updateItem($json);
break;
//etc.
}
} //etc.
какие есть плюсы-минусы? или ваши варианты?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
подскажите пожалуйста почему не выводятся теги php в html-странице:
Пытаюсь реализовать два билдера для двух разных наборов параметров (тип набора определяется по полю type)
Я использую Spring Security и Spring MVC в своем проекте, и я пытаюсь сделать страницу авторизации, но, к сожалению, при нажатии на кнопку "Log in", появляется...