isset
(PHP 3, PHP 4, PHP 5 )
isset -- 检测变量是否设置
描述
bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在则返回 TRUE,否则返回 FALSE。
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数。
警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用defined() 函数。
<?php
$var = '';
// 结果为 TRUE,所以后边的文本将被打印出来。
if (isset($var)) {
print "This var is set set so I will print.";
}
// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。
$a = "test";
$b = "anothertest";
var_dump( isset($a) ); // TRUE
var_dump( isset ($a, $b) ); // TRUE
unset ($a);
var_dump( isset ($a) ); // FALSE
var_dump( isset ($a, $b) ); // FALSE
$foo = NULL;
var_dump( isset ($foo) ); // FALSE
?>
java中要引入一个变量,可以通过参数的形式传递, 因为java中用的是面向对象的编程方式, 但php中存在着大量的面向过程的东西,比如,在一个function中引入外部的一个变量,一般情况下,这个外部的变量不通过参数传进来,而是直接 通过global引入进来。而这个global却又没有全局化的意思,做个代码的测试。
$mk ="Test value"; <br>
function initValue() <br> {
<br>
$va =$mk;
<br>
echo $va;
<br>
}
<br><br>
运行结果是:- Undefined variable: mk
因为$mk只是在方法中定义的,所以与方法前定义的$mk是不同的变量,$mk没有赋值所以报错。
如果是用global进行声明,则可以调用函数外的变量。
$mk ="Test value"; <br> function initValue() <br> { <br> global $mk; <br> $va =$mk; <br>
echo $va; <br> } <br> initValue(); <br>
运行结果为:Test value, 这里用global引入了函数外部的$mk变量.
为了测试一下global在此处没有全局化变量的意思,我再做了一个测试。
$mk ="Test value"; <br> function initValue() <br> { <br> global $mk; <br> $va =$mk; <br>
echo $va; <br> } <br> function initValue2() <br> { <br> $vc =$mk; <br> echo $vc; <br> }
<br> initValue(); <br> initValue2(); <br>
运行结果是: Test value 和- Undefined variable: mk, 这说明即使在使用了global也只是有函数中有效,所以此处的global只是引入上部变量的作用
虽然当前面向过程的php开发还占有极大一部分市场,但个人确实不太看好它,一个变量可以在n多个页面中使用,而想知道是哪个页面引入的可能得花半个小时去找(有点夸大了点), 维护起来是一种折磨。
分享到:
相关推荐
if (isset($pinyin_hanzi[$p])) { $hanzi .= $pinyin_hanzi[$p]; } else { $hanzi .= '?'; // 如果找不到对应的汉字,则使用问号代替 } } return $hanzi; } // 测试函数 echo pinyinToHanzi('yi er san'); ?...
这些魔术函数包括但不限于__construct(构造函数)、__destruct(析构函数)、__call(方法不存在时调用)、__get(获取不可访问属性值)、__set(设置不可访问属性值)、__isset(检测不可访问属性是否设置)、__...
本文将详细解释如何在PHP函数中引用全局变量,以及`global`关键字和`$GLOBALS`数组的作用。 首先,让我们回顾一下给定的代码示例: ```php <?php $var1 = "#####"; $var2 = "&&&&&"; function global_references...
对于变量,我们可以使用`isset()`函数来检查它是否已经设置并且非`NULL`。如果变量已设置且非`NULL`,`isset()`返回`true`;否则返回`false`。例如: ```php if (isset($myvar)) { echo "存在变量$myvar."; } ...
if (isset($dict[$char])) { $s .= $dict[$char]; } else { $s .= $char; } } return $s; } ``` 这个例子中,`convert()`函数会遍历输入字符串中的每个字符,如果在字典中找到对应的简体字,就替换掉原...
所有变量都是局部变量,为了使得定义的函数中可以使用外部变量,使用global语句。而你要将该变量的作用范围限制在该函数之内,使用static语句。 $g_var = 1 ; // 全局范围 function test() { global $g_var; // 这样...
8. **Isset、Empty、Is_null**:`isset`检查变量是否已设置且非NULL;`empty`检查变量是否为空,包括0、空字符串等;`is_null`专门判断变量是否为NULL。 9. **_FILE_**:在PHP中,`$_FILES`用于接收上传文件的相关...
- `isset()`:判断变量是否存在并且非空。 - `empty()`:判断变量是否为空或未定义。 - `trim()`:去除字符串两端的空白字符。 - `strlen()`:计算字符串长度。 - `str_replace()`:替换字符串中的指定内容。 #####...
在本篇中,我们将深入探讨在函数中使用`require_once`的问题以及优雅的配置文件定义方法。 首先,让我们回顾一下问题的背景。在项目中,开发人员常常使用数组来定义配置项,比如在`level.config.php`文件中定义等级...
14. **判断与逻辑**:`isset()`函数检查变量是否已设置且非NULL,返回布尔值。`or`和`||`都是逻辑或,但`or`的短路特性使其在某些情况下会有不同表现。 15. **冒泡排序**:冒泡排序是一种简单的排序算法,通过反复...
- 在PHP中,如果要在函数内部使用外部定义的变量,需要使用`global`关键字声明。 ### 特殊符号与变量管理 #### 特殊符号意义 - `$`:变量标识符。 - `&`:表示变量的引用,即地址操作符。 - `@`:错误抑制操作符,...
PHP中的魔术方法以双下划线`__`开头,如`__construct()`构造函数、`__destruct()`析构函数、`__get()`和`__set()`用于访问不可见属性、`__call()`和`__callStatic()`处理未定义的方法调用等。 6. **如何实现PHP的...
15. `isset()`:检测变量是否已设置并且非`NULL`。 16. 数组操作:`count()`用于获取数组长度,`for`循环遍历数组,`foreach`循环用于更简洁地遍历数组。 17. 数组排序:`sort()`对数组进行升序排序,`rsort()`...
在本文中,我们将深入探讨一些PHP的经典知识点,包括语法、变量、运算符、函数以及数据类型的处理。 首先,PHP的基本语法是使用`<?php ?>`来包裹代码段。变量在PHP中以`$`开头,例如`$var_name = value;`。值得注意...
- `sasl_method`: 鉴权方法,如AMQP_SASL_METHOD_PLAIN表示使用基本认证。 示例调用: ```c amqp_login(conn, "/", 0, 131072, 0, AMQP_SASL_METHOD_PLAIN, "admin", "admin"); ``` #### 5. amqp_channel_open...
1. **内置函数**:PHP提供大量的内置函数,如print_r()用于输出变量信息,echo用于输出字符串,count()计算数组元素个数,isset()检查变量是否已设置且非NULL。 2. **自定义函数**:开发者可以根据需求创建自己的...
在检查字符串长度时,使用 `isset()` 代替 `strlen()`。因为 `isset()` 只需检查一个数组索引的存在性,而 `strlen()` 需要遍历整个字符串。 #### 29. 循环中变量自增 在循环中使用 `$i++` 而不是 `++$i`。尽管两者...
`isset`函数用于检查数组中是否存在某个键。`$result[$ch]++`是对数组中某个键对应的值加一,`$result[$ch]=1`是为某个键设置值为1。`foreach`循环用于遍历数组,检查每个字符的出现次数。 5. 条件判断:通过`if`...