Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Hadess_inf en 19 Enero 2009, 17:47 pm



Título: [SOLUCIONADO] - Ayuda con array_merge y number_format
Publicado por: Hadess_inf en 19 Enero 2009, 17:47 pm
Hola a todos, he seguido este  (http://blog.unijimpe.net/generar-pdf-con-php-y-mysql/)tuto paraconvertir de php a pdf. Este es parte del codigo ya modificado para mi caso.

Código
  1. include "conexion.php";
  2. include "funciones.php";
  3. require_once('class.ezpdf.php');
  4. $pdf =& new Cezpdf('a4');
  5. $pdf->selectFont('../fonts/courier.afm');
  6. $pdf->ezSetCmMargins(1,1,1.5,1.5);
  7.  
  8. $sql = "select producto, precio from producto";
  9. $res = mysql_query($sql);
  10. $num = mysql_num_rows($res);
  11.  
  12. $ixx = 0;
  13. while($datatmp = mysql_fetch_assoc($res)) {
  14. $ixx = $ixx+1;
  15.    $data[] = array_merge($datatmp, array('num'=>$ixx));
  16. }
  17.  
  18. $titles = array(
  19.    'producto'=>'<b>producto</b>',
  20.    'precio'=>'<b>Precio</b>'
  21. );
  22.  
  23. $options = array(
  24. 'shaded'=>0,
  25. 'fontSize'=> 8,
  26. 'showLines'=>2,
  27.    'xOrientation'=>'center',
  28.    'width'=>550,
  29. );
  30.  
  31. $txttit = "<b>relacion</b>\n";
  32. $pdf->ezText($txttit, 12);
  33. $pdf->ezTable($data, $titles, '', $options);
  34. $pdf->ezText("\n\n\n", 10);
  35. $pdf->ezText("<b>Fecha:</b> ".date("d/m/Y"), 10);
  36. $pdf->ezText("<b>Hora:</b> ".date("H:i:s")."\n\n", 10);
  37. $pdf->ezStream();

Pues la duda es la siguiente, el precio del producto me lo muestra con el fomato intero(120), sin embargo yo quiero mostrarlo con formato decimal de 2 cifras (usando la funcion number_format)(120.00), pero no se como hacerlo, haber si alquien me hecha una mano pues aun no entiendo muy bien el funcionamiento de este script. Un saludo.

Este (http://api.zoopframework.com/api/function/Cezpdf::ezTable/1.2) es el link del archivo que usa el script.


Título: Re: Ayuda con array_merge y number_format
Publicado por: Dacan en 19 Enero 2009, 20:15 pm
Que tal si usas round:

Código
  1. $Round = round($tuvariable,2);

2
es el numero de lo que quieres mostrar después del .

Edit:

Código
  1. <?php
  2. $numero= 200;
  3. $numerofinal = number_format($numero, 2, '.', '');
  4. echo $numerofinal;
  5. ?>
  6.  

Saludos, Dacan  :D


Título: Re: Ayuda con array_merge y number_format
Publicado por: Hadess_inf en 22 Enero 2009, 16:29 pm
Gracias por la respuesta, pero el problema no es la conversion sino en que parte la hago, intente esto:

Código
  1. $titles = array(
  2.    'producto'=>'<b>producto</b>',
  3.    number_format('precio',2,'.',' ')=>'<b>Precio</b>'
  4. );

Pero no se puede, haber si alquien me hecha una mano, saludos.


Título: Re: Ayuda con array_merge y number_format
Publicado por: Hadess_inf en 23 Enero 2009, 17:37 pm
Al final lo solucione pero desde el mysql con la fucion:

Código
  1. Format(precio,2)