- 1
- 2
- $pending = $this->$tag['callback']($open['data'], $open['option']);
+ $pending = $this->{$tag['callback']}($open['data'], $open['option']);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−1
- $pending = $this->$tag['callback']($open['data'], $open['option']);
+ $pending = $this->{$tag['callback']}($open['data'], $open['option']);
Копаюсь в сорцах говнокода.
В PHP 7 поменяли приоритет, пол часа не мог понять что за хуйня.
−2
for condition in price_to_deposit_config
condition_is_true = false
if condition.range.length is 2
if market_data[item.id].volume >= condition.range[0] and market_data[item.id].volume <= condition.range[1]
condition_is_true = true
if condition.range.length is 1
if market_data[item.id].volume >= condition.range[0]
condition_is_true = true
if condition_is_true is true
#mk deposit price by this condition
CoffeeScript. Мозг плавится 2е сутки.
Читабельность кода уровень Высоцкого, а то и выше.
−2
Продолжение банкета
Челлендж: НОРМАЛЬНЫЙ человек должен собрать с помощью docker PHP 5.3 с его требованиями к древним и automake, и autoconf, и bison и запустить сие существо вместе с Apache2 и MySQL.
Сакральный смысл челленджа в том, чтобы в здравом уме начать, в здравом уме окончить.
0
Дикого бомбежа пост
Дикой боли стоила мне попытка собрать PHP 5.3 под Ubuntu 16.04 LTS. Клонирую репозиторий, делаю checkout на PHP 5.3, пытаюсь собрать по инструкции и тут БАЦ. autoconf и automake слишком новые. Благо были более старые версии, ставлю их через apt. И тут снова БАЦ. bison слишком новый. Пришлось скачивать исходники, компилировать их и потом уже ставить. И тут самое страшное: запустить PHP 5.3 под LAMP почти нереально. Меня всё это задолбало, сношу всё к чертям. И виноват отнюдь не PHP. Виноваты сами Томпсон, Ритчи, Линус и прочие петросяны всея вселенной *nix. Именно благодаря ним есть необходимость ставить по пять автоконфов, но не возможности.
+1
Баг в railroad diagram, описывающей strling literal в JS (из книги Крокфорда Javascript: The Good Parts).
https://i.imgur.com/8QFMrIQ.png
Эквивалентно регулярке
(\"([^\"^\\]|\\([\"\'\\\/bfnrt]|u[\d]{4}))*[^\"^\\]+\"|\'([^\'^\\]|\\([\"\'\\\/bfnrt]|u[\d]{4}))*[^\'^\\]+\')
Ставить [ code ] боюсь, парсер уже починился?
Ну, в общем, видно, что при таком раскладе, как на диаграмме, строковой литерал не может заканчиваться эскейп-последовательностью, что в действительности не так. Классический случай "something\n".
−2
function kakPropatchitKdePodFreeBsdFactor(str) {
return (str.split(/[A-Z0-9]{2,}/).length - 1) + (str.split(/[A-Za-z0-9]{2,}/).length - 1) / 10;
}
var titles = [];
var requests = [];
for (var pageId = 1; pageId <= 10; pageId++) {
(function (pageId) {
requests.push($.get('https://habrahabr.ru/all/page' + pageId, function (html) {
var domParser = new DOMParser();
var doc = domParser.parseFromString(html, 'text/html');
$(doc).find('.post__title_link').each(function () {
titles.push(this.innerHTML);
});
}));
})(pageId);
}
$.when.apply($, requests).then(function () {
titles.sort(function (a, b) {
return kakPropatchitKdePodFreeBsdFactor(b) - kakPropatchitKdePodFreeBsdFactor(a);
});
for (var i = 0; i < titles.length; i++) {
console.log(i + ". " + titles[i]);
}
});
Итак, петушки. Вот я взял 100 последних статей со швабрашвабра, встречайте победителей!!!
0. Настройка VoIP FXS шлюза Yeastar Neogate TAXXX для работы с 3CX
1. [size=19]Детективная история про RMCP+ и OpenSSL, или как Wireshark помог победить incorrect argument в OpenIPMI[/size]
2. [size=18]NRF51822: дружим BLE и RTOS[/size]
Остальные:
3. Разработка игр под NES на C. Главы 14-16. Работа со звуком
4. Дайджест свежих материалов из мира фронтенда за последнюю неделю №304 (26 февраля — 4 марта 2018)
5. Реализация быстрых 2D-теней в Unity с помощью 1D shadow mapping
6. Unity 2018 и ProBuilder: создаем, редактируем и текстурируем 3D-модели прямо в редакторе
7. Вопросы совместимости Tibero и Oracle. Часть 1. Условная компиляция PL/SQL
8. Выпуск#13: ITренировка — актуальные вопросы и задачи от ведущих компаний
9. Подборка: 12 сервисов для защиты от DDoS-атак
10. Платформа CUBA в 2017: новые фичи, новые услуги, новые планы
Остальное в коментах (не влезает в 2000 символов)
Предлагайте свои оценки для kakPropatchitKdePodFreeBsdFactor
+4
bool MyClass::operator==(int elem){
if (list.isExist(elem)){
list.remove(elem);
return true; // Операция завершена успешно
}
return false; // Элемент elem не найден в списке
}
(C) https://www.linux.org.ru/forum/development/14063699?cid=14063991
Вырвано из контекста (треда), но считаю данная кучка должна лежать здесь.
0
new Template('device.matrix.container').load(function (container_tpl) {
new Template('device.matrix.device').load(function (device_tpl) {
new Template('device.matrix.port').load(function (port_tpl) {
new ApiCall('device.matrix.list')
.set('house', event.house_id)
.do(function (r) {
// Do anything
})
});
});
});
How don't need to write JS.
+9
Argument type mismatch
Assertion failed
+10
var
DPen: TGPPen;
Drawer: TGPGraphics;
DBrush: TGPSolidBrush;
DFntFam: TGPFontFamily;
DPath: TGPGraphicsPath;
IC,BC:Integer;
ICL, BCL:TGPColor;
W:WideString;
si:TGPRectF;
rt:TGPRectF;
GP:TGPPoint;
begin
W:=FWaterMark.Text;
IC:=ColortoRGB(FWaterMark.Font.Color);
BC:=ColorToRGB(FWaterMark.CircuitColor);
ICl:=MakeColor(GetRValue(IC), GetGValue(IC), GetBValue(IC));
BCL:=MakeColor(GetRValue(BC), GetGValue(BC), GetBValue(BC));
Drawer:=TGPGraphics.Create(FBitMap.Canvas.Handle);
Drawer.SetCompositingQuality(CompositingQualityHighQuality);
Drawer.SetSmoothingMode(SmoothingModeAntiAlias);
Drawer.SetTextRenderingHint(TextRenderingHintAntiAlias);
DPath:=TGPGraphicsPath.Create;
DPen:=TGPPen.Create(BCL, FWaterMark.FCircuitWidth);
DBrush:=TGPSolidBrush.Create(ICL);
DFntFam:=TGPFontFamily.Create(FWaterMark.Font.Name);
RT.X:=0;
RT.Y:=0;
RT.Width:=FBitMap.Width;
RT.Height:=FBitMap.Height;
DPath.AddString(W, Length(W), DFntFam, FontStyleBold, FWaterMark.Font.Size, GP, TGPStringFormat.Create());
DPath.GetBounds(RT, nil, DPen);
DPath.Reset;
//В общем, хз, как узнать ширину и высоту нарисованного.
//MeasureString/MeasureCharacterRanges не подходят,а в доке такая муть, что я чуть не спился.
Нежнейший аромат...