标签: isset

JavaScript isset()等价

在PHP中你可以做到if(isset($array['foo'])) { ... }.在JavaScript中,您经常使用if(array.foo) { ... }相同的方法,但这不是完全相同的语句.如果array.foo确实存在,条件也将评估为false,但是false或者0(也可能是其他值).

issetJavaScript 中PHP的完美等价物是什么?

从更广泛的意义上讲,JavaScript处理不存在的变量,没有值的变量等的一般完整指南会很方便.

javascript isset

528
推荐指数
9
解决办法
73万
查看次数

在PHP中测试变量存在的最佳方法; isset()显然已被打破

来自isset()文档:

isset() will return FALSE if testing a variable that has been set to NULL.
Run Code Online (Sandbox Code Playgroud)

基本上,isset()不检查变量是否设置,但是否设置为除了NULL.

鉴于此,实际检查变量是否存在的最佳方法是什么?我尝试过类似的东西:

if(isset($v) || @is_null($v))
Run Code Online (Sandbox Code Playgroud)

(这@是必要的,以避免$v未设置时的警告)但is_null()有一个类似的问题isset():它返回未TRUE设置的变量!它似乎也是:

@($v === NULL)
Run Code Online (Sandbox Code Playgroud)

工作完全一样@is_null($v),所以也是这样.

我们如何可靠地检查PHP中是否存在变量?


编辑:在未设置的变量和设置为的变量之间,PHP显然存在差异NULL:

<?php
$a = array('b' => NULL);
var_dump($a);
Run Code Online (Sandbox Code Playgroud)

PHP显示$a['b']存在,并且具有NULL值.如果你添加:

var_dump(isset($a['b']));
var_dump(isset($a['c']));
Run Code Online (Sandbox Code Playgroud)

你可以看到我正在谈论的isset()功能歧义.以下是所有这三个的输出var_dump()s:

array(1) {
  ["b"]=>
  NULL
}
bool(false)
bool(false)
Run Code Online (Sandbox Code Playgroud)

进一步编辑:两件事.

一,用例.将数组转换为SQL UPDATE语句的数据,其中数组的键是表的列,数组的值是要应用于每列的值.任何表的列都可以保存一个NULL值,通过 …

php variables isset

186
推荐指数
7
解决办法
14万
查看次数

我应该在哪里使用isset()和!empty()

我读到isset()函数处理空字符串的某处TRUE,因此isset()不是从HTML表单验证文本输入和文本框的有效方法.

因此,您可以empty()用来检查用户输入的内容.

  1. isset()函数是否将空字符串视为TRUE

  2. 那我应该在哪些情况下使用isset()?我应该总是!empty()用来检查是否有东西?

例如,而不是

if(isset($_GET['gender']))...
Run Code Online (Sandbox Code Playgroud)

用这个

if(!empty($_GET['gender']))...
Run Code Online (Sandbox Code Playgroud)

php isset

95
推荐指数
7
解决办法
8万
查看次数

如果是设置$ _POST

我在一个页面上有一个表单,提交到另一个页面.在那里,它检查输入邮件是否已填满.如果是,那么做一些事情,如果没有填补,做其他事情.我不明白为什么它总是说它被设置,即使我发送一个空表格.缺少什么或错了什么?

step2.php:

<form name="new user" method="post" action="step2_check.php"> 
    <input type="text" name="mail"/> <br />
    <input type="password" name="password"/><br />
    <input type="submit"  value="continue"/>
</form>
Run Code Online (Sandbox Code Playgroud)

step2_check:

if (isset($_POST["mail"])) {
    echo "Yes, mail is set";    
} else {    
    echo "N0, mail is not set";
}
Run Code Online (Sandbox Code Playgroud)

php isset

94
推荐指数
3
解决办法
69万
查看次数

检查值是否设置为null

我需要检查值是否定义为任何值,包括null.isset将null值视为未定义并返回false.以下面的例子为例:

$foo = null;

if(isset($foo)) // returns false
if(isset($bar)) // returns false
if(isset($foo) || is_null($foo)) // returns true
if(isset($bar) || is_null($bar)) // returns true, raises a notice
Run Code Online (Sandbox Code Playgroud)

请注意,这$bar是未定义的.

我需要找到满足以下条件的条件:

if(something($bar)) // returns false;
if(something($foo)) // returns true;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

php null isset

82
推荐指数
5
解决办法
5万
查看次数

在javascript/jQuery中有类似于php的东西吗?

javascript/jQuery中有什么东西可以检查变量是否设置/可用?在php中,我们isset($variable)用来检查这样的东西.

谢谢.

javascript php jquery isset

72
推荐指数
3
解决办法
13万
查看次数

PHP的简写为isset()?

如果在PHP中不存在变量,是否有一种速记方式可以将变量赋值给某些东西?

if(!isset($var) {
  $var = "";
}
Run Code Online (Sandbox Code Playgroud)

我想做点什么

$var = $var | "";
Run Code Online (Sandbox Code Playgroud)

php isset shorthand

70
推荐指数
2
解决办法
8万
查看次数

测试是否在R中设置了函数的参数

我有一个f带两个参数(p1p2)的函数:

如果对于参数p2没有将值传递给函数,p1则应使用^ 2 的值.但是,如果给出一个值,我怎样才能在函数中找到.问题是p2如果没有值,则不会初始化变量.因此我无法测试p2存在NULL.

f <- function(p1, p2) {
    if(is.null(p2)) {
        p2=p1^2
    }
    p1-p2
}
Run Code Online (Sandbox Code Playgroud)

是否有可能检查是否将值p2传递给函数?(我找不到isset()- 功能或类似的东西.)

variables r function variable-assignment isset

53
推荐指数
3
解决办法
1万
查看次数

PHP:检查变量是否存在,但是如果值等于某个值

我有(或没有)$_GET['myvar']来自我的查询字符串的变量,我想检查这个变量是否存在,以及该值是否与if语句中的内容相对应:

我正在做和想的不是最好的方法:

if(isset($_GET['myvar']) && $_GET['myvar'] == 'something'): 做一点事

我的问题是,在没有声明变量两次的情况下,有没有办法做到这一点?

这是一个简单的案例,但想象一下,必须比较许多$myvar变量.

php variables if-statement isset

36
推荐指数
3
解决办法
5万
查看次数

在表单提交上调用特定的PHP函数

我试图在提交表单时调用特定的php函数,表单和php脚本都在同一页面中.我的代码在下面.(它不起作用,所以我需要帮助)

<html>
    <body>
    <form method="post" action="display()">
        <input type="text" name="studentname">
        <input type="submit" value="click">
    </form>
    <?php
        function display()
        {
            echo "hello".$_POST["studentname"];
        }
    ?>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

php isset

33
推荐指数
3
解决办法
19万
查看次数