7
votes

Recherche de chaînes partielles PHP

Comment rechercher une chaîne partielle lors de la frappe (ne pas utiliser MySQL) comme la fonction similaire dans MySQL, mais à l'aide de PHP lors de la recherche d'une chaîne, par exemple

<?php    

$string = "Stackoverflow";

$find = "overfl";

if($find == $string)
{
    return true;
}
else
{
    return false
}

?>


0 commentaires

3 Réponses :


3
votes

strtstr () / stristr () (ce dernier étant insensible à la casse) xxx


0 commentaires

3
votes

Stros () code> peut Faites cela.

if(strpos($string, $find) !== false)
. . .


3 commentaires

Lors du test d'existence, une comparaison stricte contre FAUX (! == FALSE ) doit être utilisé.


Oui, j'ai édité pendant que vous donniez le bowvote. Donnez un gars quelques secondes, d'accord?


Je pense que le Downvoter a voté avant votre édition. Cela a été révoqué bien que apparemment. Non, je n'étais pas celui qui a bownvote :)



16
votes

J'ai tendance à utiliser Stros

$all_matches=preg_match_all('#(hose|fribb|pancake)#',$haystack,$results);
//all_matches is int(2). Note you also have $results, which stores which needles matched.


3 commentaires

OK bien. Mais si c'était si dans un tableau? (Vérifiez la poste éditée).


Voulez-vous dire que la fointe est un tableau? Ou l'aiguille? Découvrez les documents PHP - le premier commentaire est actuellement «Strows qui accepte un tableau pour $ aiguille '


Essentiellement, vous devrez utiliser pour utiliser la matrice sur le tableau, que ce soit. Preg_Match est une solution viable si vous avez de nombreuses «aiguilles» et une «foin».