Foros del Web » Programando para Internet » PHP »

Ayuda con contar con arrays

Estas en el tema de Ayuda con contar con arrays en el foro de PHP en Foros del Web. hola que tal como estan todos este es mi segundo post en forosdelweb ... gracias a los que me ayudaron la primera vez sobre todo ...
  #1 (permalink)  
Antiguo 05/06/2010, 18:08
Avatar de jjmartca  
Fecha de Ingreso: junio-2010
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
Ayuda con contar con arrays

hola que tal como estan todos este es mi segundo post en forosdelweb ...
gracias a los que me ayudaron la primera vez sobre todo a Hidek1... bueno ahora si mi pregunta es la siguiente a traves de preg_match_all saco un array con la funcion print_r me muestra el siguiente array:

Array ( [0] => Array ( [0] => @1 [1] => @2 [2] => @3 ) [1] => Array ( [0] => @1 [1] => @2 [2] => @3 ) ) 22

como yo cuento ese array para usarlo en un for, porq al usar la funcion count me dice que exist 2 resultados y ahi hay 3 si me pueden ayudar

ejm este es el codigo q stoy usando

$post="Estoy con @1 @2 @3 en #1";
preg_match_all('/(@\w*)/', $post, $con);
preg_match_all('/(#\w*)/', $post, $en);
print_r($con);
print_r($en);
echo count($con);
echo count($en);


si cuento me dice que hay dos y dos en cada contada... pero yo kiero que me diga que con @ hay 3 y con # hay 1...


esto es lo que me imprime la cadena para los 2 casos

Array ( [0] => Array ( [0] => @1 [1] => @2 [2] => @3 ) [1] => Array ( [0] => @1 [1] => @2 [2] => @3 ) )


Array ( [0] => Array ( [0] => #1 ) [1] => Array ( [0] => #1 ) )

Gracias ante mano a todos los que me quieran ayudar nos vemos ahora
  #2 (permalink)  
Antiguo 05/06/2010, 18:33
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Ayuda con contar con arrays

lo que sucede es que el array que es creado es bidimensional, solo eso... si en la expresión usas paréntesis de captura eso agrega un elemento al resultado...

en dicho caso, el primer elemento sería toda la expresión, mas cada match en dicha expresión... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/06/2010, 18:49
Avatar de jjmartca  
Fecha de Ingreso: junio-2010
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
Pregunta Respuesta: Ayuda con contar con arrays

Cita:
Iniciado por pateketrueke Ver Mensaje
lo que sucede es que el array que es creado es bidimensional, solo eso... si en la expresión usas paréntesis de captura eso agrega un elemento al resultado...

en dicho caso, el primer elemento sería toda la expresión, mas cada match en dicha expresión... (:


ok pero que funcion me tengo que leer o como hago para transformarlo a que tipo de array debo convertirlo... si kieres solo dame los tips que yo me encargo de buscarlo... gracias por tu respuesta
  #4 (permalink)  
Antiguo 05/06/2010, 19:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Ayuda con contar con arrays

no es necesario transformarlo, la naturaleza de dicho array() es tal cual... (:

te recomiendo leer el manual
http://php.net/preg_match_all
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 05/06/2010, 19:16
Avatar de jjmartca  
Fecha de Ingreso: junio-2010
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
Entendi lo que queria y lo resolvi =D... era tan facil y tan sencillo que no lo veia...

bueno esto da un array bidimensional como dice el amigo pateketrueke, pero que pasa que tenemos que hacer... a la hora de contar el array que me da con los # solo coloco count($en[0]) y eso me va a contar todo lo que este en el array 0, cual era mi error estaba contando los arrays en conjunto claro hay dos si se dan cuenta
Array ( [0] => Array ( [0] => #1 ) [1] => Array ( [0] => #1 ) )

el [0] y el [1]... por eso siempre me decia que tenia dos y lo que hice fue contar los valores que estan dentro del array[0] y me dio, sino me explique bien bueno apenas soy nuevo en foros y de verdad que soy malo explicando ojala dia a dia mejore... bueno listo solucion a mi propia pregunta XD jajajajaja




Cita:
Iniciado por pateketrueke Ver Mensaje
no es necesario transformarlo, la naturaleza de dicho array() es tal cual... (:

te recomiendo leer el manual
[url]http://php.net/preg_match_all[/url]
amigo ya lo resolvi, si puedes ayudarme a explicarle a la gente con mejores palabras lo que hice los ayudarias mucho porque yo soy malo explicando... saludos y gracias por todo

Última edición por GatorV; 05/06/2010 a las 23:46

Etiquetas: for(), reto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:11.