Error en Generar el Archivo de Banco en los Reportes PHP
De CidesaWiki
(Diferencias entre revisiones)
(2 ediciones intermedias no se muestran.) | |||
Línea 1: | Línea 1: | ||
- | En la | + | En la generación de Archivos txt, al incluir caracteres especiales, estos caracteres cuentan un espacio mas en la cadena, esto genera que se muevan los campos del archivo: |
- | Ejemplo: | + | '''Ejemplo:''' |
+ | |||
<pre> | <pre> | ||
- | strlen( | + | $nomemp=str_to_upper('AÑEZ'); |
+ | $len_nomemp=strlen($nomemp)=5; | ||
</pre> | </pre> | ||
- | Entonces la solución | + | Entonces la posible solución, es buscar el carácter en la cadena, y si lo consigue darle un espacio mas al campo, para que se rellene con un espacio menos, si encuentra el carácter. |
<pre> | <pre> | ||
- | if (ereg((Ñ),$nomemp)){ | + | if (ereg((Ñ),$nomemp)) |
- | $rellenonombre=41 - strlen($nomemp); | + | { |
- | } | + | $rellenonombre = 41 - strlen($nomemp); |
- | else | + | } |
- | $rellenonombre=40 - strlen($nomemp); | + | else |
- | + | { | |
+ | $rellenonombre = 40 - strlen($nomemp); | ||
+ | } | ||
</pre> | </pre> |
Última versión de 16:27 11 feb 2008
En la generación de Archivos txt, al incluir caracteres especiales, estos caracteres cuentan un espacio mas en la cadena, esto genera que se muevan los campos del archivo:
Ejemplo:
$nomemp=str_to_upper('AÑEZ'); $len_nomemp=strlen($nomemp)=5;
Entonces la posible solución, es buscar el carácter en la cadena, y si lo consigue darle un espacio mas al campo, para que se rellene con un espacio menos, si encuentra el carácter.
if (ereg((Ñ),$nomemp)) { $rellenonombre = 41 - strlen($nomemp); } else { $rellenonombre = 40 - strlen($nomemp); }