<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Cette partie n'a rien à voir avec le contenu de l'article,Il peut s'agir d'une initialisation du programme ou d'un autre contenu</span></span><span>
</span><span><span class="hljs-comment">// Par exemple, définir le fuseau horaire</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/**
* stristrComment utiliser le deuxième type de fonction de paramètre?
* Explication détaillée de la différence entre les chaînes et les tableaux
*
* existerPHPmilieu,stristr函数用于exister字符串milieu查找某个子串,et renvoyer la pièce de la première occurrence de la sous-chaîne à la fin de la chaîne。
* Son utilisation de base est:
* string stristr(string $haystack, string $needle, bool $before_needle = false)
* 其milieu:
* - $haystack La chaîne est-elle recherchée
* - $needle est la chaîne à trouver
* - $before_needle Facultatif,Sitrue,Puis retournerneedleLa partie précédente
*
* Cependant,Certains développeurs seront confus:stristrLe deuxième paramètre peut-il être transmis à un tableau?Ou quelle est la différence entre passer un tableau et passer une chaîne?
*
* un、stristrLa deuxième limitation de type de paramètre
* stristrLe deuxième paramètre de la fonction doit être de type de chaîne,Impossible de passer les tableaux。Si passer dans un tableau,PHPRapportera une erreur:
* Warning: stristr() expects parameter 2 to be string, array given
*
* donc,À proprement parler,stristrSeules les chaînes sont acceptées comme le deuxième paramètre。
*
* deux、Pourquoi y a-t-il un malentendu des tableaux de passage?
* Dans certains scénarios,开发者想用多个关键词去搜索字符串是否包含其milieu任意un个,Sistristr只能un次查un个字符串。
* À ce moment-là,Une pratique courante consiste à utiliser des tableaux pour stocker plusieurs mots clés,然后遍历数组逐un调用stristrFaire un match。
*
* trois、Comment réaliser des mots multi-touches(Simuler l'effet du tableau)
* L'exemple de code est le suivant:
*/</span>
</span><span><span class="hljs-variable">$keywords</span></span><span> = [</span><span><span class="hljs-string">'apple'</span></span><span>, </span><span><span class="hljs-string">'banana'</span></span><span>, </span><span><span class="hljs-string">'orange'</span></span><span>];
</span><span><span class="hljs-variable">$text</span></span><span> = </span><span><span class="hljs-string">"I like banana and orange juice."</span></span><span>;
</span><span><span class="hljs-variable">$found</span></span><span> = </span><span><span class="hljs-literal">false</span></span><span>;
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$keywords</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$word</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">stristr</span></span><span>(</span><span><span class="hljs-variable">$text</span></span><span>, </span><span><span class="hljs-variable">$word</span></span><span>) !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-variable">$found</span></span><span> = </span><span><span class="hljs-variable">$word</span></span><span>;
</span><span><span class="hljs-keyword">break</span></span><span>;
}
}
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$found</span></span><span> !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Trouver des mots clés:<span class="hljs-subst">$found</span></span></span><span>\n";
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"没有Trouver des mots clés。\n"</span></span><span>;
}
<span class="hljs-comment">/**
* Quatre、Résumer
* - stristr的第deux个参数必须是字符串,Impossible de passer directement les tableaux。
* - Si une correspondance de mots clés est nécessaire,Vous pouvez traverser le tableau vous-même,Appelez un par unstristrJugement。
* - 这样可以灵活地Jugement字符串是否包含任un多个关键词。
*
* cinq、Autres fonctions connexes
* - stripos: Trouver des emplacements de chaînes dans le cas de l'insensible,第deux个参数也是字符串。
* - preg_match: L'appariement de mots à clé peut également être réalisé grâce à des expressions régulières,Par exemple, utiliserpattern /(apple|banana|orange)/i。
*
* Ce qui précède eststristr函数第deux个参数的类型用法及字符串和数组区别的详细说明与示例。
*/</span>
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>