LJ
Data por extenso
Fechado
Gostaria de usar a data por extenso, vou usar esta função em varias classes, gostaria de saber onde é o melhor local de coloca-la.
achei uma solução interessante nativa do php na página : https://joaoverissimoribeiro.wordpress.com/2013/06/17/php-datas-por-extenso-usando-os-recursos-nativos-do-php-para-data-por-extenso/
setlocale(LC_TIME, 'portuguese');
date_default_timezone_set('America/Sao_Paulo');
$date = date('Y-m-d');
echo strftime("%A, %d de %B de %Y", strtotime($date));
ainda não testei, mas deve funcionar, só estou querendo saber onde devo criar a função ? e sempre fico na duvida se tenho que colocar Public Function ...ou Static ?
achei uma solução interessante nativa do php na página : https://joaoverissimoribeiro.wordpress.com/2013/06/17/php-datas-por-extenso-usando-os-recursos-nativos-do-php-para-data-por-extenso/
setlocale(LC_TIME, 'portuguese');
date_default_timezone_set('America/Sao_Paulo');
$date = date('Y-m-d');
echo strftime("%A, %d de %B de %Y", strtotime($date));
ainda não testei, mas deve funcionar, só estou querendo saber onde devo criar a função ? e sempre fico na duvida se tenho que colocar Public Function ...ou Static ?
Luiz
Eu usaria como estático, assim não seria necessário instanciar a classe.
Crie uma classe "UtilDatas" e dentro dela crie o método estático, ou métodos que manipula datas, depois é só chamar:
UtilData::meu_método_estático
Olá Luiz, tudo bom?
Sugiro que você coloque sua classe na pasta "app/lib/util/".
Sobre usar static ou public, você usa o public quando quer que determinado método seja acessível externamente, este método é um "comportamento" do objeto estanciado, ou seja, faz parte de seu escopo, e para se ter acesso ao método, primeiro tem que estanciar o objeto.
Um método static é um "comportamento" que não faz parte do escopo do objeto, sendo assim, você não precisa estanciar o objeto para ter acesso ao método, geralmente é utilizado o static quando há a necessidade de se obter apenas o resultado do método.
Se o método não precisar de nenhuma informação que faça parte do escopo do objeto, para retornar algo, este método pode ser setado como static.
Mas isso não é regra, vai de acordo com a necessidade e com o método de cada um.
Obrigado, ficou resolvido, abaixo o codigo.
Ótimo, só uma dica.
Troque isso:
Por isso:
O isset verifica se a variável foi definida, no seu caso irá sempre retornar true, pois ela esta definida como um parâmetro.
Mesmo que ela não tenha valor, ela esta definida e já possui um endereço na memoria ram, sendo assim o isset ira sempre retornar true.
Usando a função empty você valida apenas o preenchimento da variável, sendo que se a variável estiver com valor vazio ou nulo, a função irá retornar true.
Existe uma diferença entre variável vazia e variável não definida, que muitas vezes passam despercebidas, mas futuramente podem gerar alguns bugs chatos srsrsr.
Só para corrigir um detalhe srsrsr
Se a variável tiver com valor null, o isset retorna false, porém, no seu caso, você esta definido como padrão um valor vazio que é diferente de null.
E como PHP é fracamente tipado, isso pode te gerar transtornos, dependendo da versão do php que está utilizando.
Obrigado não só pelo código mas também pela explicação , estou sempre aprendendo.