有什么区别,哪个更好?如何在PHP中正确使用isset函数?
这一个:
if(isset($_POST['name'])){
}
或者这一个:
$name = $_POST['name'];
if(isset($name)){
}
我想知道,如果有两个代码之间的差异,这是更有效地使用。先谢谢你!
有什么区别,哪个更好?如何在PHP中正确使用isset函数?
这一个:
if(isset($_POST['name'])){
}
或者这一个:
$name = $_POST['name'];
if(isset($name)){
}
我想知道,如果有两个代码之间的差异,这是更有效地使用。先谢谢你!
嗨第一个是正确的
if(isset($_POST['name'])){
}
这将检查$_POST['name']
设置与否。
但
$name = $_POST['name'];
if(isset($name)){
}
这将检查$name
设置与否。如果因为$_POST['name']
是否具有价值或者您没有声明$name
而进入内部。所以这会给出错误的结果
非常感谢! – Jjjjjjjjjj
@Jjjjjjjjjj欢迎:) – user1234
@Jjjjjjjjjj如果一个答案解决了你的问题,不要忘记upvote并选择它。 – BeetleJuice
这两个代码会做同样的事情。他们都会检查是否设置了变量。
在这两种情况下,您将检查是否设置了$_POST['name']
。如果你正在寻找效率,你应该使用第一个,因为创建新的变量和处理数据将始终使用更多的资源。
不,他们不会,如果变量未定义,后者将返回一个错误。 – 2016-08-02 05:18:38
当然,但这不是他的问题的重点。他想知道这两个条件之间有什么区别,哪一个更有效。实际上,是的,他们也会这样做:检查是否设置了$ _POST ['name']。 – tomfl
你显然有一个不同于宇宙其他部分的“相同”的定义。 – 2016-08-02 05:34:51
更好:
$name = isset($_POST['name']) ? $_POST['name'] : 'empty';
第一个是正确的,后者将导致一个错误,如果它不是POST阵列 – RamRaider
定义谢谢@RamRaider。现在我明白了。非常感谢。 – Jjjjjjjjjj