❶ php中声明$a = null,echo $a+1,计算机是怎么把这语句变成指令执行的
不,并不是没有分配空间。
在PHP里,null是一个值,换一句话来说,它是一个数据类型,这个数据类型里只有null这一种;
它是有自己意义的一种数据;
而弱类型的PHP里,像null、false这样的数值被隐式转换成数字,并参与到计算的时候,会认为它是数字0;
这是PHP的特性;
而一个变量不赋值,和赋值为null是不一样的,赋值为null之后,它是有自己内存地址指向的,并不是像没有赋值的变量没有指向。
具体指到了哪里,就不是我们知道的了。
另外,我们习惯于销毁一个变量使用$a=null;
但更好的却是:unset($a); 这样才更加彻底嘛!
❷ PHP中变量=""和变量为null是同一个意思吗
不是。
变量不存在就是变量未定义;null说明变量本身在内存中存在,只是值为null。
你可以写个简单的php试试:
直接输出 <?php echo $a; ?> 这种情况下,你之前并未定义变量a,运行后会报变量a未定义的错的;
但你这样写 <?php $a=null; echo $a; ?> 这样就没有问题。
❸ php,is_null 和==null为何结果不同
首先,你小写null是错误的。
其次要判断是否NULL,应该使用===,否则变量为空时也会相等。
❹ PHP中关于NULL的作用
特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
被赋值为 NULL。
尚未被赋值。
被 unset()。
var $link_id=NULL 和var $link_id 是同一个效果,只不过var $link_id=NULL 是显示声明为NULL。 也许这是ecshop的编程规范来的。
一个刚声明的未被赋值的变量又何须unset呢。
var $link_id=NULL是声明值为空的变量,unset是销毁一个有值或者无值的变量,即使你销毁后再使用,也只是使用了一个变量名一样的新变量,而不是你unset之前的变量。楼主觉得有矛盾吗。
❺ PHP 如何设置 变量 $value1 的值为 NULL
// $runoob_author="菜鸟驿站";
// $runoob_count=NULL;
$sql="INSERT INTO countnull_tbl" .
"(runoob_author,runoob_count)" .
"VALUES" .
// "('$runoob_author','$runoob_count')";
"('菜鸟驿站',NULL)";
*注释掉的方法的结果是0,未注释掉的结果是NULL;
个人分析仅供参考:runoob_count在创建数据表的时候定义的是整型,"('$runoob_author','$runoob_count')"中的'$runoob_count'就相当于‘NULL',是字符串类型,当作为数据插入数据表的时候就会有一个的数据类型转换,即字符串转换成整型,“NULL”转化成整型就是0,可通过一下代码进行简单验证:
<?php
$a=null;
$b="null";
$c=(int)$a;
$d=(int)$b;
echo "a=" . $a;
echo "<br>";
echo "b=" . $b;
echo "<br>";
echo "c=" . $c;
echo "<br>";
echo "d=" . $d;
?>
运行结果:
a=
b=null
c=0
d=0
❻ PHP中如何检测一个值为null的变量是否存在
PHP 中判断变量是否为 null 可以使用 is_null() 或者 ($var === null) 来判断,至于变量是否存在,由于 null 值会干扰到 isset() 所以只能用捕捉异常来处理。代码如下:
try{
if($var===null){
return'变量的值为null';
}else{
return'变量的值不为null';
}
}catch(Exception$exception){
return'变量不存在';
}
❼ php 数组为null怎么判断
$array = null;
if (is_null($array )) {
echo '数组是null';
}
❽ php 对象值为null
魔术方法是两个下划线,童鞋__construct
❾ thinkphp 查不出数据等于null
$id=$performance->field('p_staff_id')->select();//业绩表的
返回的$id是个二维数组
所以
$id=$performance->field('p_staff_id')->select(); 改为
$id=$performance->getField('p_staff_id', true); // 返回一维数组
$db= M('staff')->where(array('id'=>array('in', $id)))->select();
❿ php页面输出json类型值为null怎么办
php输出的几种模式echo()可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(languageconstruct),而并不是真 正的函数,因此不能作为表达式的一部分使用。echo是php的内部指令,不是函数,无返回值。print()函数print()打印一个值(它的参数),如果字符串成功显示则返回true,否则返回false。只能打印出简单类型变量的值(如int,string),有返回值 print_r()可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_mp()函数更适合调试。print_r是函数,可以打印出比较复杂的变量(如数组,对象),有返回值var_mp()判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。php返回数据 看你要返回到哪,用ajax就得输出 ajax只认得(总之就是不认php数组)整型浮点型bool型字符型用方法调用return返回就行接口也得用输出才行希望能够帮得到你。