Jump to content
william_droops

Escrever TXT com espaços certos

Recommended Posts

Preciso escrever um arquivo TXT, com espaços definidos, por exemplo o espaço para o nome com 50 caracteres no maximo, mas se o nome tiver apenas 3 caracteres preciso pular os outros 47, e assim por diante, porém não sei o nome que vem do banco de dados, como faço para contar a variável e preencher com espaços o restante do espaço.

 

Por exemplo: arquivo.txt

 

João Souza                             joao.souza@teste               2018-01-15

Share this post


Link to post
Share on other sites

+- assim:

$max_chars_to_second_column = 300;

loop($input, $key, $object){

   $quantidade = $max_chars_to_second_column - strlen($object->column1);

   $input[$key]->column1.=str_repeat(' ', $quantidade );   // ou tente com  

}

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ILR master
      Fala pessoal.
       
      Estou importando um arquivo xml para o meu DB porém, não consigo ler o campo data do xml. Todos os campos são lidos, menos o campo data. No xml ele está nesse formato: 09/06/2021 23:59:00
      Abaixo segue o código que estou usando:
       
      $xml = simplexml_load_file('cupons.xml');
      foreach($xml->coupon as $cupom) {
          echo $cupom->code.'<br>';
          echo $cupom->data.'<br>';
      }
       
      Obrigado!
    • By BrunoMga07
      Pessoal alguém pode me ajudar em meu projeto, não sei muito de php e mysql mais estou com uma ideia e queria colocar em pratica, se alguém conseguir fazer e quiser combinar um valor me só mandar mensagem.
       
      Quero criar um sistema em que terá as seguintes informações:
      1° Criar conta / logar
       - Tela usuário: Perfil, Trocar Senha, Saldo da conta, recarregar saldo, sacar saldo.
       - Historico de transações.
      2° Menu Horizontal: Inicio , PPP , APOSTA , CONTATO
       - Inicio: Informações que posso adicionar.
       - PPP: pix para pix: aparece um menu vertical mostrando as opção ex:
      1 para 4 - APARECE UMA TABELA EM QUE MOSTRA O PRIMEIRO USUARIO, COM 4 ENVIOS QUE SERÁ EFETUADO POR OUTRAS PESSOAS.
      2 para 8
      3 para 12
      4 para 16
      EXEMPLO
          USUARIO 1
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          USUARIO 2
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          USUARIO 3
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
          ENVIAR  1 PONTO
      Quando o usuario enviar 1 ponto para o usuario 1 ele será adicionado em usuario 2 esperando a vez dele para receber pontos.
      se já tiver um usuario 2 ele será incluido no usuario 3, quando o usuario 1 estiver completo ele será removido da lista
      e podera participar novamento. Só será possivel 1 envio de ponto por usuario.
      algumas regras: se o usuario 1 não estiver completo com 4 envios de 4 usuarios diferente não passa para o usuario 2. e quando algum usuario envia um ponto será removido 1 ponto dele e enviado para o usuario que ele enviou.
    • By mateus.andriollo
      Qual seria a forma correta de projetar uma aplicação multi formulários. Estou fazendo ela em Jquery com Load() mas algumas ações não são executadas em script.
      Me pergunto seria o correto?
       
      Exemplo: pensando um cadastro de clientes/empresas
      - clientes.php (formulário de cadastro/edição/anexos)
      - empresas.php (formulários de cadastro de empresa/ funcionários/ setores)
      - relatorios.php (clientes e empresas)
       
      Cada página dessa eu chamo, ela vem sempre com o seu conteúdo...
      Pensei no seguinte, todos estea formulários carregados e eu apenas usar função Get() para preencher campos e gerar os relatórios.
       
      Fica a dúvida, pois hj essas páginas extras são HTML com form e ações PHP
       
       
       
       
       
    • By Junior Ni10
      Bom dia,
       
      tenho uma necessidade matemática de passar alguns valores em $x e $y e ele me retornar o mesmo resultado que a função INCLINAÇÃO do excel retorna.
       
      $y[] = 10; $y[] = 23; $y[] = 25; $y[] = 27; $y[] = 56; $y[] = 55; $y[] = 84; $y[] = 87; $y[] = 115; $y[] = 115; $y[] = 125; $y[] = 132; $y[] = 138; $y[] = 153; $y[] = 181; $y[] = 191; $y[] = 198; $y[] = 199; $y[] = 201; $y[] = 205; $x[] = 3; $x[] = 8; $x[] = 10; $x[] = 12; $x[] = 24; $x[] = 25; $x[] = 39; $x[] = 40; $x[] = 55; $x[] = 56; $x[] = 61; $x[] = 64; $x[] = 66; $x[] = 73; $x[] = 90; $x[] = 93; $x[] = 96; $x[] = 97; $x[] = 98; $x[] = 99; Tenho esse array acima com os dados, no excel o retorno é 1,996159717, preciso que minha aplicação retorne o mesmo.
    • By clayton.lima2020
      Bom dia!
       
      Pessoal estou com um problema estou tentando enviar um e-mail através de um formulário que criei no site da empresa que eu trabalho, porém na hora de enviar está dando erro.
       
      Obs: a hospedagem do site está na Locaweb
       
      Segue abaixo o erro:
       
      Fatal error: Uncaught Error: Call to undefined function eregi() in /home/storage/2/a8/c3/odontosmilesfran1/public_html/class.phpmailer.php:593 Stack trace: #0 /home/storage/2/a8/c3/odontosmilesfran1/public_html/class.phpmailer.php(518): PHPMailer->SmtpConnect() #1 /home/storage/2/a8/c3/odontosmilesfran1/public_html/class.phpmailer.php(410): PHPMailer->SmtpSend('Date: Sat, 5 Ju...', '--b1_b48d510d23...') #2 /home/storage/2/a8/c3/odontosmilesfran1/public_html/envio-franqueador.php(55): PHPMailer->Send() #3 {main} thrown in /home/storage/2/a8/c3/odontosmilesfran1/public_html/class.phpmailer.php on line 593
       
      Segue o código do script de envio:
       

        <? require_once("class.phpmailer.php"); //Nova instância do PHPMailer $mail = new PHPMailer; //Informa que será utilizado o SMTP para envio do e-mail $mail->IsSMTP(); //Informa que a conexão com o SMTP será autênticado $mail->SMTPAuth   = true; //Configura a segurança para SSL $mail->SMTPSecure = "ssl"; $mail->Port       = 465; $mail->Host       = "email-ssl.com.br"; //Usuário para autênticação do SMTP $mail->Username =   "sejaumfranqueado@odontosmilesfranchising.com.br"; //Senha para autênticação do SMTP $mail->Password =   "12345678"; // senha ficticia //Titulo do e-mail que será enviado $mail->Subject  =   "PEDIDO PARA SER UM FRANQUEADOR"; //Preenchimento do campo FROM do e-mail $mail->From = $mail->Username; $mail->FromName = $_POST['nome']; // Nome do remetente //E-mail para a qual o e-mail será enviado $mail->AddAddress("sejaumfranqueado@odontosmilesfranchising.com.br"); //Conteúdo do e-mail //$mail->Body = "Novo contato feito através do site Araújo Imóveis.";      $mail->From     = $_POST['email']; // E-mail do remetente         $mail->Body .= "Modelo de Franquia: ".$_POST['modelo']."<br>";         $mail->Body .= "Nome: ".$_POST['nome']."<br>";     $mail->Body .= "Email: ".$_POST['email']."<br>";      $mail->Body .= "Fone Móvel: ".$_POST['fone']."<br>";     $mail->Body .= "Fone Fixo: ".$_POST['movel']."<br>";     $mail->Body .= "Estado: ".$_POST['estado']."<br>";     $mail->Body .= "Cidade: ".$_POST['cidade']."<br>";           $mail->Body .= "Mensagem: ".nl2br($_POST['mensagem'])."";                        $mail->AltBody = $mail->Body; //Dispara o e-mail $enviado = $mail->Send(); //Imprime sucesso. if($enviado)   echo "<script>alert('Sua mensagem foi enviada com sucesso!')</script>"; echo "<meta http-equiv='refresh' content='2;URL=index.php'>"; ?>  
      Segue o trecho do código do arquivo class.phpmailer.php onde está dando o erro
       

         /* Choose the mailer */     switch($this->Mailer) {       case 'sendmail':         $result = $this->SendmailSend($header, $body);         break;       case 'smtp': [b][color=red]         $result = $this->SmtpSend($header, $body); // nessa linha 410 está dando erro [/color][/b]         break;       case 'mail':         $result = $this->MailSend($header, $body);         break;       default:         $result = $this->MailSend($header, $body);         break;         //$this->SetError($this->Mailer . $this->Lang('mailer_not_supported'));         //$result = false;         //break;     }     return $result;   }   /**   Aqui está outro trecho do código:    /* Retry while there is no connection */     while($index < count($hosts) && $connection == false) {       $hostinfo = array(); [b][color=red]      if(eregi('^(.+):([0-9]+)$', $hosts[$index], $hostinfo)) { // aqui está dando erro linha 593[/color][/b]         $host = $hostinfo[1];         $port = $hostinfo[2];       } else {         $host = $hosts[$index];         $port = $this->Port;       }       $tls = ($this->SMTPSecure == 'tls');       $ssl = ($this->SMTPSecure == 'ssl');       if($this->smtp->Connect(($ssl ? 'ssl://':'').$host, $port, $this->Timeout)) {         $hello = ($this->Helo != '' ? $this->Hello : $this->ServerHostname());         $this->smtp->Hello($hello);         if($tls) {           if(!$this->smtp->StartTLS()) {             $this->SetError($this->Lang("tls"));             $this->smtp->Reset();             $connection = false;           }           //We must resend HELLO after tls negociation           $this->smtp->Hello($hello);         }         $connection = true;         if($this->SMTPAuth) {           if(!$this->smtp->Authenticate($this->Username, $this->Password)) {             $this->SetError($this->Lang('authenticate'));             $this->smtp->Reset();             $connection = false;           }         }       }       $index++;     }     if(!$connection) {       $this->SetError($this->Lang('connect_host'));     }     return $connection;   }    

      Obrigado a todos que puderem ajudar
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.