- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
/**
* @brief Макрос вызова функции изменения имени файла лога ПИМ
*
* @param FILE_NAME Имя файла лога
*
* @return Ничего
*/
#define LOG_PIM_SET_FILE_NAME(FILE_NAME) Soc::setLogFileName(FILE_NAME)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+2
/**
* @brief Макрос вызова функции изменения имени файла лога ПИМ
*
* @param FILE_NAME Имя файла лога
*
* @return Ничего
*/
#define LOG_PIM_SET_FILE_NAME(FILE_NAME) Soc::setLogFileName(FILE_NAME)
Самый нужный макрос в мире
+6
function utf8ToCp1251($s,$type="w") {
if ((is_string($s) && strlen($s)>0) && ((mb_detect_encoding($s,'UTF-8,CP1251')) == "UTF-8")) {
$out="";
for ($c=0;$c<strlen($s);$c++) {
$i=ord($s[$c]);
if ($i<=127) @$out.=$s[$c];
if (@$byte2) {
$new_c2=($c1&3)*64+($i&63);
$new_c1=($c1>>2)&5;
$new_i=$new_c1*256+$new_c2;
if ($new_i==1025) {
$out_i=168;
} else {
if ($new_i==1105) {
$out_i=184;
} else {
$out_i=$new_i-848;
}
}
@$out.=chr($out_i);
$byte2=false;
}
if (($i>>5)==6) {
$c1=$i;
$byte2=true;
}
}
return $out;
}
else return $s;
}
Одна из стандартных функций битрикса.
Видимо iconv им не знаком...
0
#include <iostream>
using namespace std;
int main(){
int n = 60;
int a = 1 << n;
cout << a << endl;
n = 33;
a = 1 << n;
cout << a << endl;
unsigned m = 33;
unsigned b = 1u << m;
cout << b << endl;
// a = 1 << 32;
// cout << a << endl;
return 0;
}
Моар:
http://acm.math.spbu.ru/~kunyavskiy/cpp/sol02.cpp
+2
//получаем Элемент
$resource = CIBlockElement::GetByID($Bid);
if ($ob = $resource->GetNextElement())
{
//вытягиваем поля, свойства
$arFields = $ob->GetFields();
$arFields['PROPERTIES'] = $ob->GetProperties();
// удаляем все поля, нахрен мы их вообще выдергивали
$arFieldsCopy = $arFields;
unset(
$arFieldsCopy['ID'],
$arFieldsCopy['~ID'],
$arFieldsCopy['IBLOCK_SECTION_ID'],
$arFieldsCopy['~IBLOCK_SECTION_ID'],
$arFieldsCopy['TIMESTAMP_X'],
$arFieldsCopy['~TIMESTAMP_X'],
$arFieldsCopy['ACTIVE_TO'],
$arFieldsCopy['~ACTIVE_TO'],
$arFieldsCopy['DATE_ACTIVE_TO'],
$arFieldsCopy['~DATE_ACTIVE_TO'],
$arFieldsCopy['PREVIEW_PICTURE'],
$arFieldsCopy['~PREVIEW_PICTURE'],
$arFieldsCopy['PREVIEW_TEXT'],
$arFieldsCopy['~PREVIEW_TEXT'],
$arFieldsCopy['DETAIL_PICTURE'],
$arFieldsCopy['~DETAIL_PICTURE'],
$arFieldsCopy['DETAIL_TEXT'],
$arFieldsCopy['~DETAIL_TEXT'],
$arFieldsCopy['XML_ID'],
$arFieldsCopy['~XML_ID'],
$arFieldsCopy['EXTERNAL_ID'],
$arFieldsCopy['~EXTERNAL_ID'],
$arFieldsCopy['TMP_ID'],
$arFieldsCopy['~TMP_ID'],
$arFieldsCopy['CODE'],
$arFieldsCopy['~CODE'],
$arFieldsCopy['SEARCHABLE_CONTENT'],
$arFieldsCopy['~SEARCHABLE_CONTENT'],
$arFieldsCopy['WF_LAST_HISTORY_ID'],
$arFieldsCopy['~WF_LAST_HISTORY_ID'],
$arFieldsCopy['WF_COMMENTS'],
$arFieldsCopy['~WF_COMMENTS'],
$arFieldsCopy['WF_DATE_LOCK'],
$arFieldsCopy['~WF_DATE_LOCK'],
$arFieldsCopy['WF_LOCKED_BY'],
$arFieldsCopy['~WF_LOCKED_BY'],
$arFieldsCopy['WF_NEW'],
$arFieldsCopy['~WF_NEW'],
$arFieldsCopy['WF_PARENT_ELEMENT_ID'],
$arFieldsCopy['~WF_PARENT_ELEMENT_ID'],
$arFieldsCopy['SHOW_COUNTER'],
$arFieldsCopy['~SHOW_COUNTER'],
$arFieldsCopy['TAGS'],
$arFieldsCopy['~TAGS'],
$arFieldsCopy['LOCKED_USER_NAME'],
$arFieldsCopy['~LOCKED_USER_NAME'],
$arFieldsCopy['SHOW_COUNTER_START'],
$arFieldsCopy['~SHOW_COUNTER_START']
);
$arFieldsCopy['ACTIVE']='N';
$arFieldsCopy['ACTIVE_FROM']=date('d.m.Y');
/*... тра тра та заполняю я поля ....*/
$arFieldsCopy['PROPERTY_VALUES'] = [
/* ... тра та та,
тра та та,
заполняю свойства я
...
*/
];
/*
... Продолжая песню петь
удалю я все теперь
...
*/
unset($arFieldsCopy['PROPERTIES']);
// кульминация пьесы, добавление нового Элемента
$el = new CIBlockElement();
$NEW_BID_ID = $el->Add($arFieldsCopy);
}
Эм.... толи память экономит, то ли оплата за код построчно ....
−1
if ( strpos(str_replace('"', "'", json_encode($opt)), "'status':0") )
Зачем
−1
FROM centos:7
RUN yum update -y && yum -y install openssh-server ssh
RUN echo 'root:123456' | chpasswd
RUN passwd -u root
RUN ssh-keygen -A
RUN ssh-keygen -t rsa -b 4096 -C "[email protected]" -N "" -f /root/.ssh/id_rsa
RUN cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
RUN chmod 600 /root/.ssh/id_rsa.pub
ADD ./ssh_config /etc/ssh/ssh_config
ADD ./sshd_config /etc/ssh/sshd_config
CMD ["/bin/sh", "-c", "{ while :; do /usr/sbin/sshd -eD ; done }"]
docker build --name trolleybus-is-hleba .
+6
$("#sendme").click(function(){
$('#error').html('');
$('.req').css('border-color','#fff');
var name = $('#name').val();
var phone = $('#phone').val();
var email = $('#email').val();
var day = $('#day').val();
var year = $('#year').val();
var msg = $('#message').val();
if(name.length){
if(phone.length){
if(day.length){
if(year.length){
if(isEmail(email)==true){
//logic
}else{$('#error').html('Ошибка в адресе электронной почты!'); $('#email').css('border-color','#FF4141');}
}else{$('#error').html('Введите год рождения!'); $('#year').css('border-color','#FF4141');}
}else{$('#error').html('Введите день рождения!'); $('#day').css('border-color','#FF4141');}
}else{$('#error').html('Введите номер телефона!'); $('#phone').css('border-color','#FF4141');}
}else{$('#error').html('Введите свои имя и фамилию!'); $('#name').css('border-color','#FF4141');}
});
матрёшка!
+2
//#1
$queryo = "SELECT * FROM `tx_carmodels` WHERE 1 <= ID AND ID <= (SELECT COUNT(*) FROM `tx_carmodels`) ";
$resulto = mysql_query($queryo);
$sqlresos = mysql_fetch_assoc($resulto);
foreach ($sqlresos as $sqlreso){
$preVendor[] = $sqlreso["vendor"];
// print_r($sqlreso);
}
$arVendor = array_unique($preVendor);
foreach($arVendor as $vendor) {
echo '<option value="'.$vendor.'">'.$vendor.'</option>';
}
// #2
$query = "SELECT count(*) FROM `tx_carmodels`";
$result = mysql_query($query);
$res = mysql_fetch_array($result);
$allinfile = $res[0];
for ($i = 1; $i <= $allinfile; $i++) {
$queryo = "SELECT * FROM `tx_carmodels` WHERE id=$i";
$resulto = mysql_query($queryo);
$sqlreso = mysql_fetch_assoc($resulto);
$preVendor[] = $sqlreso["vendor"];
//print_r($sqlreso);
}
$arVendor = array_unique($preVendor);
foreach($arVendor as $vendor) {
$vsel = ($_GET["vendor"] == $vendor)?('selected="selected"'):('');
echo '<option value="'.$vendor.'" '.$vsel.'>'.$vendor.'</option>';
}
Два перла,
даже и коментировать нечего ....
+2
// Статическая типизация для PHP < 7.0
set_error_handler(function(){});
function foo(int $bar)
{
var_dump($bar);
}
foo(1); // Работает и выводит int(1)
Недавно разгребал легасикод доставшийся по наследству. Увидел статическую типизацию там где ее не должно было быть. Проект крутится на 5.3.
+3
/**
* Validate natural number (0,1,2,3,...)
*
* @param string $value number
* @return string
*/
public function natural($value)
{
$response = '';
if (!preg_match('/^[0-9]+$/', $value)) {
$response = $this->lang->get_str('system_invalid_neutral');
}
return $response;
}
/**
* Validate natural number, but not a zero (1,2,3,...)
*
* @param string $value number
* @return string
*/
public function natural_no_zero($value)
{
$response = '';
if (!preg_match('/^[0-9]+$/', $value)) {
$response = $this->lang->get_str('system_invalid_neutral_no_zero');
}
if ($value == 0) {
$response = $this->lang->get_str('system_invalid_neutral_no_zero');
}
return $response;
}