比较变量 PHP
我如何比较两个变量字符串,是不是像这样:
$myVar = "hello";
if ($myVar == "hello") {
//do code
}
并检查 url 中是否存在 $_GET[] 变量,是不是像这样”
$myVars = $_GET['param'];
if ($myVars == NULL) {
//do code
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
供您参考,我第一次启动 PHP 时困扰了我好几天的事情:
For your reference, something that stomped me for days when first starting PHP:
为了比较字符串,我建议使用三等号运算符而不是双等号。
为了检查 $_GET 变量,我宁愿使用 array_key_exists,如果键存在但内容为 null,isset 可以返回 false,
例如:
尽可能避免进行诸如
$_GET 之类的分配,取决于用户。所以预期的密钥可能可用,也可能不可用。如果您访问该密钥时不可用,则会触发运行时通知。如果启用了通知,这可能会填满您的错误日志,或者在最坏的情况下向您的用户发送垃圾邮件。只需执行一个简单的 array_key_exists 即可在引用 $_GET 上的键之前检查它。
来源:
http://ca.php.net/isset
http://ca.php.net/array_key_exists
http://php.net/manual/en/language.types.array.php
For comparing strings I'd recommend using the triple equals operator over double equals.
For checking the $_GET variable I rather use array_key_exists, isset can return false if the key exists but the content is null
something like:
When possible avoid doing assignments such as:
$_GET, is user dependant. So the expected key could be available or not. If the key is not available when you access it, a run-time notice will be triggered. This could fill your error log if notices are enabled, or spam your users in the worst case. Just do a simple array_key_exists to check $_GET before referencing the key on it.
Sources:
http://ca.php.net/isset
http://ca.php.net/array_key_exists
http://php.net/manual/en/language.types.array.php
如果您想检查变量是否已设置,请使用isset()
If you wanna check if a variable is set, use
isset()
要将变量与字符串进行比较,请使用以下命令:
要查看变量是否已设置,请使用 isset(),如下所示:
To compare a variable to a string, use this:
To see if a variable is set, use isset(), like this:
所有这些信息都列在 PHP 网站的 Operators
http://php.net/manual 下/en/language.operators.comparison.php
All this information is listed on PHP's website under Operators
http://php.net/manual/en/language.operators.comparison.php