Foros del Web » Programando para Internet » PHP »

array_serach - buscar coincidencias en un array

Estas en el tema de array_serach - buscar coincidencias en un array en el foro de PHP en Foros del Web. tengo una array con estos numero Array ( [0] => 424 [1] => 123 [2] => 442 [3] => 424 [4] => 420 [5] => ...
  #1 (permalink)  
Antiguo 18/01/2010, 09:52
 
Fecha de Ingreso: enero-2010
Mensajes: 62
Antigüedad: 12 años, 7 meses
Puntos: 1
array_serach - buscar coincidencias en un array

tengo una array con estos numero
Array ( [0] => 424 [1] => 123 [2] => 442 [3] => 424 [4] => 420 [5] => 412 [6] => 123 [7] => 369 [8] => 424 [9] => 424 [10] => 600 [11] => 442 [12] => 123 )

y cuando hago un array_search() solo me devuelve el primer numero, por ejemplo

array_search(''424", $numeros);

me devuelve 0 que es el primer lugar donde aparece 424

y quiero que devuelva esto
0
4
9
10

Necesito su ayuda, no sé si está bien usar array_search o si existe otra manera de hacerlo

de antemano gracias

pd: por escribir algo rapido puse mal el titulo ^^U

Última edición por nat_chan07; 18/01/2010 a las 09:54 Razón: cuek
  #2 (permalink)  
Antiguo 18/01/2010, 10:00
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 10 meses
Puntos: 334
Respuesta: array_serach - buscar coincidencias en un array

te refieres a esto
?

Código PHP:
Ver original
  1. $test = Array(424,123,442,424,420,412,123,369,424,424,600,442,123);
  2. print_r(array_keys($test,424));
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 18/01/2010, 10:09
 
Fecha de Ingreso: septiembre-2009
Ubicación: Managua
Mensajes: 128
Antigüedad: 12 años, 11 meses
Puntos: 5
Respuesta: array_serach - buscar coincidencias en un array

Hola amigo aca esta la solucion, avisa cualquier cosa para eso estamos aca

Código PHP:
$array_patron = array (424123442 ,424420412123369424424600442123);

    for(
$i=0$i<count($array_patron); $i++){
        if(
$array_patron[$i] == 424){
            
$array_posiciones[] = $i
        }
    }
    
    foreach(
$array_posiciones as $posicion){
        echo 
$posicion "<br>";
    } 
Suerte
  #4 (permalink)  
Antiguo 18/01/2010, 10:13
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 10 meses
Puntos: 334
Respuesta: array_serach - buscar coincidencias en un array

Cita:
Iniciado por equality_211085 Ver Mensaje
Hola amigo aca esta la solucion, avisa cualquier cosa para eso estamos aca

Código PHP:
$array_patron = array (424123442 ,424420412123369424424600442123);

    for(
$i=0$i<count($array_patron); $i++){
        if(
$array_patron[$i] == 424){
            
$array_posiciones[] = $i
        }
    }
    
    foreach(
$array_posiciones as $posicion){
        echo 
$posicion "<br>";
    } 
Suerte

, aunque igual la funcion array_keys hace lo que tu dices


saludos
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 18/01/2010, 10:14
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 14 años, 11 meses
Puntos: 20
Respuesta: array_serach - buscar coincidencias en un array

De hecho con la función que puso hidek es mas que suficiente.
__________________
I see dead pixels
  #6 (permalink)  
Antiguo 18/01/2010, 10:14
 
Fecha de Ingreso: septiembre-2009
Ubicación: Managua
Mensajes: 128
Antigüedad: 12 años, 11 meses
Puntos: 5
Respuesta: array_serach - buscar coincidencias en un array

Lo hice para salir de lo tradicional xD
  #7 (permalink)  
Antiguo 18/01/2010, 10:18
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 14 años
Puntos: 105
Respuesta: array_serach - buscar coincidencias en un array

Código PHP:
Ver original
  1. <?php
  2. $numeros = Array('',424,123,442,424,420,412,123,369,424,424,600,442,123);
  3. unset($numeros[0]);
  4. $buscar = 424;
  5. $resultados = array_keys($numeros,$buscar);
  6. foreach($resultados as $indice) echo "$indice<br />";
  7. ?>

suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #8 (permalink)  
Antiguo 18/01/2010, 10:21
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 12 años, 10 meses
Puntos: 334
Respuesta: array_serach - buscar coincidencias en un array

Cita:
Iniciado por masterojitos Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2. $numeros = Array('',424,123,442,424,420,412,123,369,424,424,600,442,123);
  3. unset($numeros[0]);
  4. $buscar = 424;
  5. $resultados = array_keys($numeros,$buscar);
  6. foreach($resultados as $indice) echo "$indice<br />";
  7. ?>

suerte.
explica lo de
... Array('',424,1 ...
unset($numeros[0]);


(?) cual seria la utilidad de eso?
__________________
More about me...
~ @rhyudek1
~ Github
  #9 (permalink)  
Antiguo 18/01/2010, 10:40
 
Fecha de Ingreso: enero-2010
Mensajes: 62
Antigüedad: 12 años, 7 meses
Puntos: 1
Respuesta: array_serach - buscar coincidencias en un array

oh gracias por ayudarme, me sirvió de mucho

estaba haciendo puras cabezas de pescado y dandome vueltas en algo nada que ver.

los quero
  #10 (permalink)  
Antiguo 18/01/2010, 13:30
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 14 años
Puntos: 105
Respuesta: array_serach - buscar coincidencias en un array

Hidek1... simplemente puse ese codigo... ya que vi que el usuario en su ejemplo:

Cita:
y quiero que devuelva esto
0
4
9
10
al parecer queria la posicion exacta del elemento buscado.... entonces puse ese codigo.

Seria como hacer:
Código php:
Ver original
  1. echo ($indice + 1)."<br />";

Dios os Bendiga a todos.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog

Etiquetas: coincidencias
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 20:37.