• 0
Sign in to follow this  
kklo

Formatação de Data

Question

Bom dia

Estou com um problema e não estou conseguindo formatar a data para dd/mm/YY na seguinte linha

 <span><?php st_the_language("added_on") ?> <?php echo esc_html($data['date']) ?></span>

Atualmente, aparece  out 11,2017 com o código acima

Alguém pode me ajudar?

Obrigado.

kklo

 

Share this post


Link to post
Share on other sites

14 answers to this question

Recommended Posts

  • 0

quando eu preciso usar data eu pego assim:

<?php
	date_default_timezone_set('America/Sao_Paulo');
	$data = date('d/m/Y');
?>

 

Edited by laio

Share this post


Link to post
Share on other sites
  • 0

Esse é o script para pegar a data e jogar na variável $data

<?php
	date_default_timezone_set('America/Sao_Paulo');
	$data = date('d/m/Y');
?>

Depois, onde você quiser mostrar a data você tem q dar um echo na variável $data

<?php
	echo $data;
?>

 

Share this post


Link to post
Share on other sites
  • 0

formatei:

$data = date('d M Y');

Mas o mes fica em ingles Oct

Coloquei:

setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese', 'ptb', 'portuguese-brazil', 'bra', 'brazil', 'pt_BR.iso-8859-1', 'br');

mesmo assim continua em ingles.

Acho estranho, porque é um código dentro WordPress todo em Portugues e configurado para Portugues e o Tema a mesma coisa. Só esta linha que está errado.

Edited by kklo

Share this post


Link to post
Share on other sites
  • 0
1 hora atrás, kklo disse:

Fica mostrando a data de hoje e não a data out 11,2017

Eu acabei de testar aqui, acho que o problema é você colocar o "M" maiúsculo. Quanto coloca maiúsculo aparece Oct, quando coloca minusculo aparece 10.

Outro script que também funciona é esse.

<?php
	setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
	date_default_timezone_set('America/Sao_Paulo');
	echo strftime('%d %B %Y', strtotime('today'));
?>

nesse caso vai aparecer: 26 outubro 2017

Edited by laio

Share this post


Link to post
Share on other sites
  • 0

Mas não quero a data de hoje, preciso que apareça a data que foi inserida, neste caso out 11,2017 só que em formato portugues

Share this post


Link to post
Share on other sites
  • 0

Tente:

<?php
	setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
	date_default_timezone_set('America/Sao_Paulo');
	echo strftime('%d %B %Y', strtotime($suavariavel));
?>

 

Edited by Diogo Eira

Share this post


Link to post
Share on other sites
  • 0

oi

Se eu colocar:

<?php
	setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
	date_default_timezone_set('America/Sao_Paulo');
	echo strftime('%d %B %Y', strtotime(($data['date'])));
?>

a resposta que tenho é 31 dezembro 1969 e não a data de inserção que é out 11,2017

Se eu colocar

 <?php
	setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
	date_default_timezone_set('America/Sao_Paulo');
	echo var_dump($data['date']);
?>

eu recebo string(12) "out 13, 2017" , mas como formatar para d M Y ?

Share this post


Link to post
Share on other sites
  • 0

Faça:

<?php
	$data = $data['date'];
	setlocale(LC_TIME, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
	date_default_timezone_set('America/Sao_Paulo');
	echo strftime('%d %B %Y', strtotime($data));
?>

 

Share this post


Link to post
Share on other sites
  • 0

A resposta foi:

31 dezembro 1969

Não foi a data original que deveria ser out 11,2017

Parece fácil, mas é complicado trabalhar com data.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this