- 1
#define LEAP_YEAR_OR_NOT(year)( ( year % 4 ) ? ( 0 ) : ( 1 ) )
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
#define LEAP_YEAR_OR_NOT(year)( ( year % 4 ) ? ( 0 ) : ( 1 ) )
Тот кто это писал, видимо рассуждал примерно так:
- В 2100 году это конечно забагует, но это будет уже не моя проблема.
0
package java.util;
public final class Optional<T> {
public<U> Optional<U> map(Function<? super T, ? extends U> mapper) {
Objects.requireNonNull(mapper);
if (!isPresent())
return empty();
else {
return Optional.ofNullable(mapper.apply(value));
}
}
}
Они не только не знают, что else после if не нужен и лишь привносит лишний нестинг, они даже единый стиль расставления фигурных скобок выдержать не могут
0
<?php declare(strict_types=1);
/**
* This file is part of Swoft.
*
* @link https://swoft.org
* @document https://swoft.org/docs
* @contact [email protected]
* @license https://github.com/swoft-cloud/swoft/blob/master/LICENSE
*/
namespace Database;
use Swoft;
use Swoft\SwoftComponent;
/**
* Class AutoLoader
*
* @since 2.0
*/
class AutoLoader extends SwoftComponent
{
/**
* Class constructor.
*/
public function __construct()
{
parent::__construct();
Swoft::setAlias('@database', dirname(__DIR__) . '/database');
}
/**
* @return array
*/
public function getPrefixDirs(): array
{
return [
__NAMESPACE__ => __DIR__,
];
}
/**
* @return array
*/
public function metadata(): array
{
return [];
}
}
https://github.com/swoft-cloud/swoft/blob/master/database/AutoLoader.php
−3
Обращение.
Антонио, перепиши этот сайт на современный стек технологий. Очень рекомендую:
- Vue или React
- NodeJS или Go
- MongoDB
- побольше AJAX-а
Очень неютно находиться на технически устаревшем сайте - какой-то колхозный PHP, голый HTML, JS и jQuery... Твоим сайтом хочется гордиться, а не блеваться от него.
Новые фичи добавлять необязательно.
0
$snippet = preg_split('/'. $qs .'/i', $replace);
$c = 1;
foreach( $snippet as $snip ) {
$length = strlen( $snip ) * .3;
$xlength = strlen( explode( $qs, $snip )[0] );
if( $c % 2 !== 0 ) {
$highlight_1 = substr( $snip, $xlength * .3, $xlength );
}
else {
$highlight_2 = substr( $snip, 0, $length );
}
$c++;
}
$output .= '<dfn class="revolver__search-snippet">... '. preg_replace("#[^а-яА-ЯA-Za-z:;._,? -]+#u", '', $highlight_1) . '<mark>'. $qs .'</mark>'. preg_replace("#[^а-яА-ЯA-Za-z:.;_,? -]+#u", '', $highlight_2) .' ...</dfn></li>';
Pick — самая маленькая поисковая система на PHP и MySQL
Здесь пришлось повозиться. Простой подход совсем не подразумевал, что PHP начнет обрабатывать UTF-8 корректно, но я смог добиться работы с русским и английским языками.
https://habr.com/post/526652
0
#Это калькулятор
t=input("Введите колличество чисел (2 или 3): ")
if t == '3':
one=float(input("Введите первое число: "))
two=float(input("Введите второе число: "))
three=float(input("Введите третье число: "))
n=input("Введите первый знак: ")
if n != '+' and n != '-' and n != '*' and n != '/' :
print("Вы написали что-то неправильно")
else:
m=input("Введите второй знак: ")
if m != '+' and m != '-' and m != '*' and m != '/' :
print("Вы написали что-то неправильно")
else:
if n == '+':
if m == '+':
rez=one+two+three
print(rez)
elif m == '-':
rez=one+two-three
print(rez)
elif m == '*':
rez=one+two*three
print(rez)
elif m == '/':
rez=one+two/three
print(rez)
else:
print("Вы написали что-то неправильно")
elif n == '-':
if m == '+':
rez=one-two+three
print(rez)
elif m == '-':
rez=one-two-three
print(rez)
elif m == '*':
rez=one-two*three
print(rez)
elif m == '/':
rez=one-two/three
print(rez)
else:
print("Вы написали что-то неправильно")
elif n == '*':
if m == '+':
rez=one*two+three
print(rez)
elif m == '-':
rez=one*two-three
print(rez)
elif m == '*':
rez=one*two*three
print(rez)
elif m == '/':
rez=one*two/three
print(rez)
else:
print("Вы написали что-то неправильно")
elif n == '/':
if m == '+':
rez=one/two+three
print(rez)
elif m == '-':
rez=one/two-three
print(rez)
elif m == '*':
rez=one/two*three
print(rez)
elif m == '/':
rez=one/two/three
print(rez)
else:
print("Вы написали что-то неправильно")
else:
print("Вы написали что-то неправильно")
elif t == '2':
z=input("Введите знак: ")
if z != '+' and z != '-' and z != '*' and z != '/' :
print("Вы написали что-то неправильно")
else:
one=float(input("Введите первое число: "))
two=float(input("Введите второе число: "))
if z == '+':
rez=one+two
print(rez)
elif z == '-':
rez=one-two
print(rez)
elif z == '*':
rez=one*two
print(rez)
elif z == '/':
rez=one/two
print(rez)
else:
print("Вы написали что-то неправильно")
else :
print("Вы написали что-то неправильно")
Как можно сократить говнокод? Просто интересно... Спасибо)
−1
function in_array(what, where) {
for(var i=0; i<where.length; i++)
if(what == where[i])
return true;
return false;
}
Когда PHP'шному быдлокодеру не хватило функций в Javascript
0
<?php
/*
Purpose : To add database functions.
Created : Nikitasa
Date : 16-11-2016
*/
include 'configs/dbconfig.php';
class mysql{
var $link;
// connect database function
public function connect_database(){
$this->link = mysqli_connect(Host,Username,Password,Database);
if(!$this->link){
die('Unable to connect');
}
// return $this->link;
}
// query execution
public function execute_query($query){
$result = mysqli_query( $this->link, $query);
// mysqli_more_results($this->link);
return $result;
}
// next query execution
public function next_query(){
mysqli_next_result($this->link);
}
// result display
public function display_result($result){
$obj = mysqli_fetch_assoc($result);
return $obj;
}
// clear the results
public function clear_result($result){
mysqli_free_result($result);
}
// real escape string
public function real_escape_str($str){
return mysqli_real_escape_string($this->link, $str);
}
// number of rows
public function num_rows($result){
$num = mysqli_num_rows($result);
return $num;
}
// close connection
public function close_connection(){
//mysqli_close($res);
mysqli_close($this->link);
}
}
$mysql = new mysql();
?>
0
public class Checker
{
public bool CheckInn(long inn)
{
var values = inn.ToArray();
switch (values.Length)
{
case 10:
#region Юр. лица
var coefficientsN10 = new byte[] { 2, 4, 10, 3, 5, 9, 4, 6, 8 };
int sumN10 = GetSumNx(values, coefficientsN10);
var checkNumberN10 = (sumN10 % 11) % 10;
return values[^1] == checkNumberN10;
#endregion
case 12:
#region Физ. лица
var coefficientsN11 = new byte[] { 7, 2, 4, 10, 3, 5, 9, 4, 6, 8 };
var coefficientsN12 = new byte[] { 3, 7, 2, 4, 10, 3, 5, 9, 4, 6, 8 };
var sumN11 = GetSumNx(values, coefficientsN11);
var checkNumberN11 = (sumN11 % 11) % 10;
var sumN12 = GetSumNx(values, coefficientsN12);
var checkNumberN12 = (sumN12 % 11) % 10;
return values[^2] == checkNumberN11 && values[^1] == checkNumberN12;
#endregion
default:
return false;
}
}
private int GetSumNx(byte[] values, byte[] coefficientsNx)
{
var sumNx = 0;
for (int i = 0; i < coefficientsNx.Length; i++)
sumNx += coefficientsNx[i] * values[i];
return sumNx;
}
}
public static class Extensions
{
public static byte[] ToArray(this long number)
{
var values = new Stack<byte>(12);
while (number != 0)
{
values.Push((byte)(number % 10));
number /= 10;
}
return values.ToArray();
}
}
Проверка ИНН, ну и говно
0
public static long ToNotation(int n, int notation)
{
var result = 0;
var values = new Stack<int>();
if (notation == n)
return n;
if (notation > n)
return 0;
while (n / notation > 0)
{
values.Push(n % notation);
n /= notation;
}
values.Push(n);
int offset = 1;
var Array = values.ToArray();
for (int i = Array.Length - 1; i >= 0; i--)
{
result += Array[i] * offset;
offset *= 10;
}
return result;
}
Пероевод в системы счисления