Heim > php教程 > php手册 > Hauptteil

如何使用PHP运算符==比较字符串

WBOY
Freigeben: 2016-06-13 11:07:31
Original
1122 Leute haben es durchsucht

以上代码输出结果为:

bool(true)所以,在使用对字符串进行比较时,建议使用PHP运算符==对字符串进行严格的检查,或使用strcmp()等函数,从而避免可能产生的问题。

除此之外,常用的in_array()函数也存在弱类型的问题,见如下代码:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li><span>var_dump(in_array('01', array('1')));  </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>
Nach dem Login kopieren

以上代码输出结果为:

bool(true)

相信用过该函数进行安全性检查的PHP编程人员都知道这会产生怎么样的安全问题了吧?幸好in_array()函数为我们提供了第三个参数,把它设为 true 就可以打开in_array()函数的强制类型检查机制,如下代码所示:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php   </span></span></span></li>
<li><span>var_dump(in_array('01', array('1'), true));   </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>
Nach dem Login kopieren

输出结果为:

bool(false)

由于PHP是一种弱类型的语言,也就是说数据类型这个概念在PHP中被弱化。因而如果在编程时过分忽略数据类型(也是大部份PHP程序员的通病),会产生一些问题,甚至导致安全漏洞。在PHP运算符==的介绍最后,还是那句说得很烦很烦的话,对外来数据进行严格检查和过滤。


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage