Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

karina pereira refacho

colocar traços em escrita

Recommended Posts

Olá gostaria de saber como faço para inserir traço em uma sha512 exemplo no script abaixo me gera 10 sha512 gostaria que a hash apareça assim,

 

4dff4ea3-40f0-a823-f15d3-f4f01ab62eae0-e5da579ccb851f8db9dfe84c58b2b37b89903a740e1ee172da793a6e79d560e5f7f9bd058a12a280433ed6fa46510a

 

note que na hash apareceu cinco ( - ) logo no inicio dela como faço para ao gerar a hash inserir esses 5 traços.

<?php
$temp = "\r\n";
$n=1;
for ( $number = 1 ; $number <= 10 ; ++$number ) {
	$variavel = hash('sha512', $number)."";
     do {
		
		$lucky = hexdec(substr($variavel,0,8));
	} while ($lucky > 4294960000);

	$n++;

echo ' HASH '.$variavel.' = '.$number.'<br />' ;
}

Desde já agradeço a atenção de todos e uma ótima semana

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que determina a inserção dos traços?

Compartilhar este post


Link para o post
Compartilhar em outros sites
9 horas atrás, Gabriel Heming disse:

O que determina a inserção dos traços?

olá eu preciso que a hash sai dessa maneira

Exemplo Correto, Hash Numero 1 = 6b86b273-9d6b-804e-ff5a-3f5747ada4eaa22f1d49c01e52ddb7875b4bb

Nesse exemplo depois de 8 caracteres e incluindo um - depois aparece mais 3 traços apos 4 caracteres .

eu fiz um codigo postado aqui abaixo, se testar esse script no phptester a hash aparece assim.

Hash Numero 1 = 6b86b273-9d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4bb

eu preciso que ela saia igual ao exemplo correto será incluido 4 caracteres.

 

<?php
$temp = "\r\n";
$n=1;
for ( $number = 1 ; $number <= 5 ; ++$number ) {
	$variavel = hash('sha256', $number)."";
     do {
		
		$lucky = hexdec(substr($variavel,0,8));
	} while ($lucky > 4294960000);

	$n++;
      echo ' Hash ',' Numero '.$number.' = ', substr_replace( $variavel, '-', 7, 7 ), substr( $variavel, -1 ),'<br />';

}

obrigada pela atenção  tenha uma ótima noite

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloca uma gambis que rola;

 

$mascara = hash('sha256', $number)
$arr = str_split($mascara);

$x=0;
$juntis='';
foreach ($arr as $test) {

	$x++;

	if($x==5){
	$juntis.=$test."-";
	}else if($x==9)
	{
		$juntis.=$test."-";
	}
	else if($x==13)
	{
		$juntis.=$test."-";
	}else if($x==17)
	{
		$juntis.=$test."-";
	}
	else if($x==30)
	{
		$juntis.=$test."-";
	}
	else{
		$juntis.=$test;
	}


}


echo $juntis;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 horas atrás, bross lightyear disse:

coloca uma gambis que rola;

 


$mascara = hash('sha256', $number)

$arr = str_split($mascara);

$x=0;
$juntis='';
foreach ($arr as $test) {

	$x++;

	if($x==5){
	$juntis.=$test."-";
	}else if($x==9)
	{
		$juntis.=$test."-";
	}
	else if($x==13)
	{
		$juntis.=$test."-";
	}else if($x==17)
	{
		$juntis.=$test."-";
	}
	else if($x==30)
	{
		$juntis.=$test."-";
	}
	else{
		$juntis.=$test;
	}


}


echo $juntis;

 

legal essa soluçao só que surgiu um problema no primeiro codigo postado  nessa parte do codigo abaixo ele me da 5 resultados.

<?php
for ( $number = 1 ; $number <= 5 ; ++$number)  {
	

fiz uma implementação abaixo e so aparece um resultado o que pode ser ? codigo abaixo

<?php

$temp = "\r\n";
$n=1;
for ( $number = 1 ; $number <= 5 ; ++$number)  {
	$mascara  = hash('md5', $number)."";

 }

$arr = str_split($mascara);

$x=0;
$juntis='';
 foreach ($arr as $test) {

	$x++;

	if($x==8){
	$juntis.=$test."-";
	}else if($x==12)
	{
		$juntis.=$test."-";
	}
	else if($x==16)
	{
		$juntis.=$test."-";
	}else if($x==20)
	{
		$juntis.=$test."-";
	
	}
	else{
		$juntis.=$test;
	}


}

$n++;
echo $juntis;

obrigada pela ajuda desculpe pois sou muito leiga em php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se entendi corretamente seria isso:

$hash = '4dff4ea340f0a823f15d3f4f01ab62eae05da579ccb851f8db9dfe84c58b2b37b89903a740e1ee172da793a6e79d560e5f7f9bd058a12a280433ed6fa46510a';

//^      Indica o inicio do texto
//(.{n}) Captura os próximos n caracteres.
//(.+)$  Captura os caracteres restantes até o final do texto.
$pattern = '/^(.{8})(.{4})(.{4})(.{4})(.+)$/';

// $n.. representa cada um dos grupos entre parenteses, onde n indica a posição do grupo no $pattern.
$replacement = '$1-$2-$3-$4-$5';

$masked = preg_replace($pattern, $replacement, $hash);

echo $masked;

Você pode testar em https://3v4l.org/6bJSU.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Leloruhan
      Boa noite , estou com uma duvida de colocar a coluna ao lado da outra , segue imagens do código e do prototipo , alguém consegue me ajudar ? falar em que estou errando.
      TENTEI USAR DISPLAY : FLEX  E INLINE-BLOCK DECLARANDO AS COLUNAS TB MAS "não FUNCIONOU".
    • Por Delcio Costa
      Olá!, sou novato no php e gostaria de entender como posso separar valores por data, preciso fazer um SELECT para poder realizar o calculo depois, mas para isso acredito que preciso separar os valores da seguinte forma:
      Separar o ultimo registro do VALOR no dia ATUAL  e diminuir do ultimo registro do VALOR no dia ANTERIOR
      Seria algo tipo isso:
      ultimo registro do dia anterior foi: VALOR = 40 , DATA 03-12-2019, HORA 19:30:00
      ultimo registro do dia atual foi    :  VALOR = 60 , DATA 04-12-2019, HORA 17:00:00  
      $ultimo_valor_dia_atual - $ultimo_valor_dia_anterior = valor_acumulado = 20
      Não faço a minima ideia de como fazer isso, já procurei por tudo e não consigo nem achar um exemplo próximo disso, sempre aparece somente como manipular data, mas preciso manipular o valor conforme a data.
      Alguém poderia me ajudar.
    • Por Highlander1901
      Senhores, buenas... não consigo efetuar esse SELECT, e já quebrei a cabeça pra dar certo. Podem me ajudar?
       
      SELECT
               "A"."CCUSTO" as "Célula",
               "A"."IDCONTR" as "Matrícula",
               "A"."NOME",
               "A"."SINDICATO",
               "A"."DESCEVENTO",
               "A"."LOCAL",
               (HOUR("A"."JAN") + (MINUTE("A"."JAN") / 60)) as "Mes Anterior",
               (HOUR("A"."FEV") + (MINUTE("A"."FEV") / 60)) as "Mes Atual",
               ((HOUR("A"."JAN") + (MINUTE("A"."JAN") / 60)) -(HOUR("A"."FEV") + (MINUTE("A"."FEV") / 60))) as "Crescimento",
               (MINUTE("A"."FEV") / 60) as "Minutos"
      FROM  "BD_HORAS" AS  "A" 
      WHERE     "A"."CCUSTO"  = '113'
       OR    "A"."CCUSTO"  = '432'
       
      Detalhes de erro:
      Qualquer uma das opções abaixo poderia ser a possibilidade para o erro:

      1. Poderia haver tipos incompatíveis de dados em um dos lados do operador comparador. Nesse caso, converta as colunas e tente novamente.

      2. Não há função correspondente ao nome  e argumento fornecidos. Você pode precisar adicionar conversões do tipo explícita.   Obs.: Sempre utilizei esse código, o que alterava era apenas o as colunas "JAN" e "FEV", dependendo do avanço dos meses.
       
      HEEEELP!
    • Por cjarosi
      Boa tarde galera. 
      Estou precisando de ajuda.
      Preciso dividir uma foto para ser impressa em vários tamanhos. Quero montar uma composição de quadros, mas com uma só imagem. 
      Não sei se estão conseguindo entender.
      Quero pegar uma foto e dividir essa foto em varias partes com tamanhos diferentes (tamanho A3, A4, Q1) para imprimir e depois juntar os quadros formando uma única imagem.
      Em anexo vou colocar duas imagens que exemplificam mais ou menos o que pretendo fazer.
      Se puderem me ajudar agradeço muito.
       


    • Por BryanSamuel
      Eu preciso somar a coluna SOMA onde a coluna A e a coluna B(ao outro registro, por exemplo A do registro 1 e A do registro 2 forem iguais) forem iguais, após isso dividir por 3 e em seguida inserir em outra tabela.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.