Как создать самоподписанный SSL-сертификат
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
cat server.crt server.key > server.pem
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
cat server.crt server.key > server.pem
С помощью DateTime::diff
$seconds = 123456;
$dateTime = new DateTime();
$diff = $dateTime->diff(
(clone $dateTime)->add(
new DateInterval(
'PT' . $seconds . 'S'
)
)
);
echo $diff->format(
'%d д. %h ч. %i м. %s с.'
);
// 1 д. 10 ч. 17 м. 36 с.
Значение в скобках указывает на максимальную длину отображения числа, и то только если у поля указана опция ZEROFILL, которая очень редко используется.
Поэтому для полей типа INT есть смысл указывать в скобках стандартное значение 11
И тоже самое справедливо для TINYINT(3), SMALLINT(5), MEDIUMINT(8), BIGINT(20)
Значение в скобках влияет на размер используемой памяти только для полей CHAR(n), VARCHAR(n), BINARY(n), VARBINARY(n)
Добавить в ~/.bashrc
строку:
alias key='eval `ssh-agent -s` && ssh-add ~/.ssh/id_rsa'
Работает под ubuntu в wsl
function cartesian(array $set): array
{
$result = [];
if (!$set) {
$result[] = [];
return $result;
}
$head = array_shift($set);
$tails = cartesian($set);
foreach ($head as $headValue) {
foreach ($tails as $tail) {
array_unshift($tail, $headValue);
$result[] = $tail;
}
}
return $result;
}
$set = [
[1, 2],
['A', 'B'],
['+', '-'],
];
print_r(cartesian($set));
/*
Array
(
[0] => Array
(
[0] => 1
[1] => A
[2] => +
)
[1] => Array
(
[0] => 1
[1] => A
[2] => -
)
[2] => Array
(
[0] => 1
[1] => B
[2] => +
)
[3] => Array
(
[0] => 1
[1] => B
[2] => -
)
[4] => Array
(
<?php
// @formatter:off
...
// @formatter:on
Для работы этой функциональности должна быть включена галочка Settings > Editor > Code Style > Formatter Control > Enable formatter markers in comments
$bom = pack('H*', 'EFBBBF');
$string = preg_replace("/^$bom/", '', $string);
if (!preg_match('/^[a-f\d]{8}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{4}-[a-f\d]{12}$/', $guid)) {
// invalid guid
}
Как запустить фоновый процесс?
Добавить вконце команды амперсанд:
sleep 30 &
Как сделать текущий процесс фоновым?
CTRL + Z
Как перейти в последний запущенный фоновый процесс?
fg
Как вывести список всех фоновых процессов?
jobs
Как перейти в конкретный фоновый процесс?
fg 2
Добавить в начало sql файла:
SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, AUTOCOMMIT = 0;
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS = 0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS = 0;
И в конец файла:
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
SET AUTOCOMMIT = @OLD_AUTOCOMMIT;
COMMIT;
Увеличить в конфиге key_buffer_size
до 30% доступной памяти
Выставить в конфиге innodb_flush_log_at_trx_commit = 2
Возможные значения: