Autor
|
Tema: Operador LIKE para PHP [Solucionado] (Leído 7,467 veces)
|
peib0l
Wiki
Desconectado
Mensajes: 3.493
freedom
|
Buenas tardes foreros, Tengo un ligero contratiempo, estoy realizando una web donde tengo un buscador y necesito encontrar algo similar al operador LIKE de MySQL pero para realizar búsquedas en cadenas de texto las cuales están en un array de PHP, no puedo almacenarlo en una bases de datos pues los datos son externos a mi sistema y pueden variar en cualquier momento, ademas que esto supondría una carga inmensa. Gracias Solucion: if(strpos($texto, $busqueda) !== false) { echo 'ocurrencia detectada'; }
|
|
« Última modificación: 23 Noviembre 2014, 09:39 am por peib0l »
|
En línea
|
|
|
|
Shell Root
|
Lo más parecido que conozco son expresiones regulares sobre cada registro, pero obviamente hablando de rapidez es mejor usar un motor de bases de datos optimo para la cantidad de registros e interacción
|
|
« Última modificación: 22 Noviembre 2014, 17:49 pm por Shell Root »
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
dimitrix
|
Expresiones regulares:<?php # Similar al Like. Besitos, Dimitrix ^^ $texto = "Este libro es *muy* difícil de encontrar."; $palabra = "*muy*"; "<i>" . $palabra . "</i>", $texto); ?>
|
|
|
En línea
|
|
|
|
MinusFour
|
Podrias usar strpos: if(strpos($texto, $busqueda) !== false) { echo 'ocurrencia detectada'; }
|
|
|
En línea
|
|
|
|
Shell Root
|
MinusFour como vas a comprar el poder de un LIKE o un ExpReg con un simple strpos... 
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
dimitrix
|
MinusFour como vas a comprar el poder de un LIKE o un ExpReg con un simple strpos...  Ojo, yo prefiero muchas veces el strpos ya que te devuelve la posición y de ahí puedes hacer muchas cosas.
|
|
|
En línea
|
|
|
|
MinusFour
|
MinusFour como vas a comprar el poder de un LIKE o un ExpReg con un simple strpos...  Depende de lo que quieras que haga el LIKE. Si tienes un LIKE: SELECT * FROM tabla WHERE campo LIKE 'test';
No necesitas usar expresiones regulares y es justo lo que dice el manual de php.net. Sugerencia No use preg_match() si solo quiere verificar si una cadena está contenida en otra cadena. Use strpos() o strstr() en su lugar ya que éstas serán más rápidas. http://php.net/manual/es/function.preg-match.php
|
|
|
En línea
|
|
|
|
Shell Root
|
Pues si quieres esa consulta no usaría LIKE, SELECT * FROM tabla WHERE campo = 'test';
Ojo, yo prefiero muchas veces el strpos ya que te devuelve la posición y de ahí puedes hacer muchas cosas.
Pues porque necesitas la posición, pero cuando necesitas sólo sacar registros con x caracteristicas que?
|
|
« Última modificación: 23 Noviembre 2014, 02:36 am por Shell Root »
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
dimitrix
|
Pues porque necesitas la posición, pero cuando necesitas sólo sacar registros con x caracteristicas que? Por eso he dicho "en ocasiones", en ocasiones lo puedo necesitar para virsas cosas, como por ejemplo: - Si es la última palabra, añadir "..." - Cortar todo el texto "hasta la palabra" y poner antes "..." - etc. Son ejemplos, aunq el segundo creo que se podría hacer también con expr. regulares.
|
|
|
En línea
|
|
|
|
Shell Root
|
Pues en este caso no se ha preguntado por la posición, sino algo que se asemeje al operador LIKE de mysql
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
operador new para doble char
Programación C/C++
|
neo_from_cs_matrix
|
7
|
4,033
|
9 Agosto 2011, 01:16 am
por escabe
|
|
|
El operador UPC de Irlanda bloquea a The Pirate Bay…para hacer un test
Noticias
|
wolfbcn
|
0
|
2,238
|
25 Octubre 2012, 19:23 pm
por wolfbcn
|
|
|
Opciones para liberar un iPhone 5 y usar una SIM de un operador diferente
Noticias
|
wolfbcn
|
0
|
2,273
|
22 Junio 2013, 13:19 pm
por wolfbcn
|
|
|
Nace Cyrca, el exclusivo operador móvil para supermillonarios
Noticias
|
wolfbcn
|
0
|
1,515
|
29 Abril 2014, 01:52 am
por wolfbcn
|
|
|
R se convierte en operador para toda España: ¿quinto operador a la vista?
Noticias
|
wolfbcn
|
0
|
3,339
|
26 Abril 2019, 14:30 pm
por wolfbcn
|
|