UPDATE pg_database SET datallowconn = 'false' WHERE datname = 'database_name';
SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'database_name' AND pid <> pg_backend_pid();
DROP DATABASE database_name;
(1) можно подменить сертификат с хз каким клиентом на мобиле
2)3) понадежнее
Или от моего устройства до WiFi роутера тоже в зашифрованном виде передаются?
Решает ли VPN все проблемы с безопасностью в публичном WiFi
:last-child
— это последний элемент родительского контейнера. Совсем последний. После него не должно быть никаких элементов. Не получится использовать и :last-of-type
, так как last-of-type подразумевает последний элемент по имени, а не по классу (и если после последнего div.blog-item будет хотя бы один div на этом же уровне иерархии, этот div.blog-item перестанет быть last-of-type)..blog-item + .blog-item {
/* В ситуации с 5-ю элементами с классом .blog-item, которые строго
* следуют друг за другом, этот селектор применится
* к элементам со второго по пятый. Первый будет проигнорирован.
*/
}
// Возврат нескольких значений:
function some() {
return [23, 42];
}
// Получение
[$a, $b] = some();
\var_dump($a, $b);
// Возврат нескольких значений:
function some() {
return ['a' => 23, 'b' => 42];
}
// Получение
['a' => $a, 'b' => $b] = some();
\var_dump($a, $b);
function some() {
yield 'a' => 23;
yield 'b' => 42;
}
foreach (some() as $key => $value) {
echo $key . ':' . $value; // a:23 b:42
}
function some() {
yield 23;
yield 42;
}
foreach (some() as $value) {
echo $value; // 23 42
}
function some() {
yield 23;
return 42;
}
$value = some();
echo $value->current(); // 23
$value->next();
echo $value->getReturn(); // 42
class DataTransferObject
{
private $a;
private $b;
public function __construct($a, $b)
{
$this->a = $a;
$this->b = $b;
}
public function getA()
{
return $this->a;
}
public function getB()
{
return $this->b;
}
}
function some() {
return new DataTransferObject(23, 42);
}
$value = some();
echo $value->getA(); // 23
echo $value->getB(); // 42
<video loop="loop" playsinline="" muted="muted" data-src="files/uploads/main.mp4" preload="none" class="abs-video abs"></video>
document.addEventListener('DOMContentLoaded', function(){ // или 'load', попробуйте что больше подойдет
const player = document.querySelector('.abs-video');
player.oncanplay = function(){ player.play() }; // вызовется, когда загрузится хотя-бы несколько первых кадров
player.src = player.dataset.src; // подставляем правильный src
})
-movflags faststart
, что позволит начать проигрывание еще до полной загрузки файла.