PHP contar caracteres

VerXeR

No se si me he explicado bien en la cabecera, lo que me gustaria poder hacer es contar cuantos caracteres muestro, es decir, se trata de un while que debe hacer una tabla que muestre los resultados, nos ha dejado rallados hoy en clase el profesor pq nos ha dicho que a ver si alguien lo saca xa el lunes... y bueno nos ha puesto 3 ejercicios, que los números aparezcan en una tabla todo en una fila en vertical, en horizontal y que aparezcan todos metidos en una tabla normal y corriente.

las dos primeras las he resuelto sencillamente ya que seria asi:

<table><tr>
<?php
      $i=1;
     while ($i<=50) {
      echo "<td>$i</td>";
      $i=$i+1;
     }
?>
</tr></table>

(se trataria de una tabla en horizontal con números del 1 al 50 cada uno en sus celdas)

en cuanto a hacer una tabla y que se muestra como repartido nose como coño hacerlo, habia pensado en contar la cantidad de numeros que devuelve el while y con un if definir que cada X numeros abra y cierre un <tr> se como distribuirlo y tal solo me falta saber como cojones se cuentan los numeros, he probado con la funcion strlen pero me cuenta cuantos caracteres me devuelve (cuando el número es 10 me devuelve 2, cuando el número es 100, me devuelve 3, etc..) lo que me gustaria seria saber cuantos numeros para poder hacer eso.


=====================================

[EDITADO]: Resuelto, si algun moderador es tan amable que borre este post inutil y sorry por haber posteado sin darme primero diez mil cabezazos contra el php ¬¬

por si alguien tiene curiosidad, el resultado es el siguiente:
<table><tr>
<?php

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$i=1;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while ($i<=100) {

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (isset($aux) && $aux==0) {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "<tr>";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "<td>$i</td>";

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$aux=$i % 10;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($aux==0) {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "</tr>";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$i=$i+1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

?>
</table>

(Nada que ver con lo que yo pensaba hacer de un principio, sino coger la variable del vucle que se repite y dividirla por un número, cuando el resto es 0 crea un tr de tal manera que cada vez que ese número se múltiplique me da de resto 0 y coloca el tr. En el ejemplo de arriba cada 10 crea un tr hasta llegar a 100 que se para el vucle)

LOc0

Es bucle :)

Salu2 ;)

PD: La explicación que das al principio tiene poco que ver con lo que realmente querías hacer...

l31m

$i=$i+1; <- NO POR FAVOR

$i++; <- SI

EnZo

Como yo lo haria:

<table>
<tr>
<?
$j=1;
for ($i=1; $i<=100 ;++$i) {
echo "<td>$i</td>\n";
if ($j++ == 10) {
echo '</tr><tr>';
$j=1;
}
}
?>
</tr>
</table>

Como dice loco no se entendia lo que querias hacer, he tenido que usar el codigo pa entenderlo xD
Vete acostumbrando a usar for en vez de while y ++$i en vez de $i=$i+1

VerXeR

soz por lo de "vucle" xD, bueno supongo que se puede hacer de mil maneras, xo el profesor queria que lo hicieramos con el while y eso de $i++ aun no lo hemos dado supongo que lo dira el proximo dia.. o algo..:S xa el caso lo q hace es sumar 1 a la variable $i, no? gracias de todos modos por cnt :P

11 días después
Foni

#3 porque no $i=$i+1?

yo ya me acostumbré a $i++ que es mas cómodo, pero tan valido es lo uno como lo otro.

Usuarios habituales

  • Foni
  • VerXeR
  • EnZo
  • l31m
  • LOc0