Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala minha gente boa, olha, estou meio sem tempo no momento, por isso vou escrever uma dica rápida okay? Então vamos lá.
Esta dica é para quem está no nível iniciante+
Os bancos de dados lidam com datas de uma maneira distinta. Pensando na portabilidade, é melhor não apenas abstrair o banco, mas também alguns dados.
Se você precisa das datas apenas para informar quando algo aconteceu, apenas um timestamp é necessário.
Se você for usar datas em cláusulas, a disposição dos campos é um pouco diferenciada.
/ MySql - timestamp dinâmico /
CREATE TABLE mystic_table
(
id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
/*
* int
*/
timestamp_field TIMESTAMP DEFAULT 0
);
/ MySql - Apenas armazenagem /
CREATE TABLE mystic_table
(
id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
/*
* String(20)
*/
timestamp_field varchar(20) COLLATE utf8_unicode_ci NOT NULL
);
Você pode armazenar o "timestamp" de várias maneiras, entre elas estão o próprio banco (se suportar), com o php time() e outros.
Com o "timestamp" podemos obter as datas que precisamos.
<?php
/*
* Exemplo para PHP+MySql
*/
$dsn = "mysql:host=localhost;dbname=your_db_name";
$username = "XXXXXX";
$password = "YYYYYY";
try {
$pdo = new PDO($dsn, $username, $password);
} die("Could not connect to the database\n");
}
$statement = $pdo->prepare("SELECT * FROM `mystic_table` WHERE 1");
$statement->execute();
$result = $statement->fetch();
$ts = $result['timestamp_field'];
echo "Segundo: ", date( 's', $ts ), "\n";
echo "Minuto: ", date( 'i', $ts ), "\n";
echo "Hora: ", date( 'h', $ts ), "\n";
echo "Dia: ", date( 'd', $ts ), "\n";
echo "Semana: ", date( 'W', $ts ), "\n";
echo "Mês: ", date( 'm', $ts ), "\n";
echo "Ano: ", date( 'Y', $ts ), "\n";
Da para fazer muito mais usando apenas um timestamp.
Carregando comentários...