Разработка сайтов на WordPress и фреймворке Yii2

Здесь Вы можете заказать полный пакет услуг по разработке сайта. Начиная от написания ТЗ до программирования на PHP, JavaScript и верстке.

Конвертация человеко-понятной даты, в дату формата unix timestamp

База данных MySQL

Для того что бы конвертировать дату типа ГГГГ-ММ-ДД ЧЧ:ММ:СС в дату состоящую только из чисел (т.е. timestamp дату). Нужно использовать MySQL функцию "UNIX_TIMESTAMP".

Пример:

SELECT UNIX_TIMESTAMP('2017-05-22 14:20:05') `new_date`

Получаем - 1495452005

Делаем то же, но без времени:

SELECT UNIX_TIMESTAMP('2017-05-22') `new_date`

Получаем - 1495400400

Как получить SQL запрос текстом в Yii2

Фреймворк Yii2

Казалось бы, простая и тривиальная задача. Но пришлось немного покопаться в коде и доках.
И так, что бы получить "чистый" SQL запрос который в последствии будет передан в БД на выполнение, достаточно использовать следующий код:

echo $Query -> select('*')
-> from('{{%authitem}}') -> createCommand() -> getRawSql();

Как подключиться к нескольким БД в Yii2

Фреймворк Yii2

Для того что бы подключиться к нескольким БД в фреймворке Yii2 нужно:
1. Создать две настройки БД в конфигурационном файле сайта. У меня подключения вынесены в отдельные файлы, и имеют следующий вид (пример).
Подключение к первой базе данных:

return  [
	'class' => 'yii\db\Connection',
	'dsn' => 'mysql:host=127.0.0.1;dbname=work_db1',
	'username' => 'root',
	'password' => '',
	'charset' => 'utf8',
	'tablePrefix' => 'tbl_',
];

Подключение к второй базе данных:

return  [
	'class' => 'yii\db\Connection',
	'dsn' => 'mysql:host=127.0.0.1;dbname=work_db2',
	'username' => 'root',
	'password' => '',
	'charset' => 'utf8',
	'tablePrefix' => 'tbl_',
];

2. В базовом конфиге прописываем:

'db' => require(__DIR__ . '/db.php'),
'db2' => require(__DIR__ . '/db2.php'),

Читать далее...