首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在PHP中,什么时候变量赋值会返回false?

在PHP中,变量赋值会返回false的情况有以下几种:

  1. 当赋值操作失败时,例如尝试将一个非法值赋给一个变量,或者尝试将一个对象赋给一个不兼容的类型。
  2. 当赋值操作引发一个错误时,例如尝试将一个超过内存限制的大字符串赋给一个变量。
  3. 当使用某些特定的函数进行赋值操作时,例如file_get_contents()函数在读取文件失败时会返回false。

需要注意的是,PHP中的变量赋值操作通常不会返回false,而是会返回赋给变量的值。只有在特定的情况下才会返回false。因此,在编写代码时,应该根据具体情况来判断变量赋值是否成功,而不是依赖返回值来判断。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

你知道Javafinal和static修饰的变量什么时候赋值的吗?

不难得出: 用final修饰不是构造方法赋值的String类型或者基本类型成员变量,编译成字节码文件时,对应的字段表也带有ConstantValue属性。...那单独用final修饰的实例变量到底是什么时候赋值的呢? 这个问题也不难回答,看一下字节码就清楚了。...static修饰的类变量 ---- 上面讲到ConstantValue属性的作用是通知虚拟机为静态变量赋值。 什么是静态变量?static修饰的变量! 那static修饰的变量什么时候加载的呢?...回到static修饰的变量(类变量),类变量有两种赋值方式可以选择: 使用ConstantValue属性赋值类构造器方法赋值。...目前Oracle公司实现的Javac编译器的选择是: final+static修饰:使用ConstantValue属性赋值。 仅使用static修饰:方法赋值

1.8K20
  • 对象赋值PHP到底是不是引用?

    对象赋值PHP到底是不是引用? 之前的文章,我们说过变量赋值的问题,其中有一个问题是对象进行变量赋值的时候,直接就是引用赋值。那么到底真实情况是怎样呢?...之前变量赋值的文章 PHP变量赋值 对象引用测试 继续深入的学习PHP手册后,发现原来对象还真不是直接的引用复制。...而引用赋值是复制指针(相同的内存地址),修改任意一个变量其他的变量也会改变。但是对象的普通赋值貌似并不属于它们的任何一个。...PHP手册中有一个Note是如此描述的: 首先,将PHP变量看成是一个一个的数据槽。这个数据槽可以保存一个基本类型(int、string、bool等)。...只有该变量修改对象内部的内容时,另一个变量因为持有相同的句柄,所以它的对象内容也相应地发生改变。

    1.8K20

    PHP如何使用全局变量的方法详解

    有很多方法能够使这些数据成为全局数据,其中最常用的就是使用“global”关键字申明,稍后文章我们具体的讲解到。...使用全局变量和“global”关键字 PHP默认定义了一些“超级全局(Superglobals)”变量,这些变量自动全局化,而且能够程序的任何地方中调用,比如$_GET和$_REQUEST等等。...开发的过程,你可能知道知道每一个全局变量,但大概一年之后,你可能忘记其中至少一般的全局变量,这个时候你会为自己使用那么多全局变量而懊悔不已。 那么如果我们不使用全局变量,我们该使用什么呢?...请求封装器 虽然我们的注册器已经使“global”关键字完全多余了,我们的代码还是存在一种类型的全局变量:超级全局变量,比如变量$_POST,$_GET。...> 正如你看到的,现在我们不再依靠任何全局变量了,而且我们完全让这些函数远离了全局变量。 结论 本文中,我们演示了如何从根本上移除代码的全局变量,而相应的用合适的函数和变量来替代。

    7.3K100

    【C 语言】指针间接赋值 ( 直接修改 和 间接修改 指针变量 的值 | 函数 间接修改 指针变量 的值 | 函数 间接修改 外部变量 的原理 )

    文章目录 一、直接修改 和 间接修改 指针变量 的值 二、函数 间接修改 指针变量 的值 三、函数 间接修改 外部变量 的原理 一、直接修改 和 间接修改 指针变量 的值 ---- 直接修改 指针变量...的值 , 就是为其赋值一个地址值 , 使用 & 取地址符 , 将变量地址赋值给指针变量 , 或者使用 malloc 函数分配内存赋值给 指针变量 ; // 将变量地址赋值给一级指针 p...间接修改 指针变量 的值 ---- 函数 间接修改 指针变量 的值 , 将 指向一级指针 的 二级指针 变量 , 传递到 函数形参 , 函数 , 使用 * 符号 , 修改 二级指针...p2 = &p; // 间接修改指针的值 *p2 = 12345678; // 打印一级指针地址 printf("%d\n", p); // 函数 ,...三、函数 间接修改 外部变量 的原理 ---- 如果要 修改 一级指针 的值 , 必须 传入 指向 一级指针 的 二级指针 变量 才可以 , 传入一级指针变量 , 不能修改一级指针变量值 ; 这是因为

    21.2K11

    这份PHP面试题总结得很好,值得学习

    print也是php的一个关键字,有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false* print_r 可以打印出复杂类型变量的值(如数组...传值与传引用的区别,并说明传值什么时候传引用?...判断变量是否定义或者是否为空,变量存在返回ture,否则返回false变量定义不赋值返回false  unset一个变量返回false变量赋值为null,返回false。...empty:判断变量的值是否为空,能转换为false的都是空,为空返回true,反之返回false。..."",0,"0",NULL,FALSE都认为为空,返回true,没有任何属性的对象都认为是空 is_null:检测传入的值(值、变量、表达式)是否为null 定义了,但是赋值为Null 定义了,但是没有赋值

    5K20

    2021年最新PHP 面试、笔试题汇总(二)

    require是致命的,而include不是 require_once,include_once表示了只包含一次,避免了重复包含 二十二、php传值与传引用的区别,并说明传值什么时候传引用 变量默认总是传值赋值...,那也就是说,当将一个表达式的值赋予一个变量时,整个表达式的值被赋值到目标变量,这意味着:当一个变量的赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量 php也提供了另外一种方式给变量赋值...使用引用赋值,简单地将一个&符号加到将要赋值变量前(源变量) 对象默认是传引用 对于较大的数据,可以考虑传引用,这样可以节省内存的开销 二十三、PHP 不使用第三个变量实现交换两个变量的值 //方法一...PHP开发过程,如果遇到大数组等操作,那么可能造成内存溢出等问题。..., true, true, false, 13, 1 why: php 字符串==0 恒成立 php 字符串和数字相加,如果字符串开头是数字,则等于字符串开头的数字(字符串第一个位置开始,到第一个非数字和

    44030

    2021年最新PHP 面试、笔试题汇总(二)

    require是致命的,而include不是 require_once,include_once表示了只包含一次,避免了重复包含 二十二、php传值与传引用的区别,并说明传值什么时候传引用 变量默认总是传值赋值...,那也就是说,当将一个表达式的值赋予一个变量时,整个表达式的值被赋值到目标变量,这意味着:当一个变量的赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量 php也提供了另外一种方式给变量赋值...使用引用赋值,简单地将一个&符号加到将要赋值变量前(源变量) 对象默认是传引用 对于较大的数据,可以考虑传引用,这样可以节省内存的开销 二十三、PHP 不使用第三个变量实现交换两个变量的值 //方法一...PHP开发过程,如果遇到大数组等操作,那么可能造成内存溢出等问题。..., true, true, false, 13, 1 why: php 字符串==0 恒成立 php 字符串和数字相加,如果字符串开头是数字,则等于字符串开头的数字(字符串第一个位置开始,到第一个非数字和

    38240

    PHP面试题,PHP笔试题

    php echo include('file1.php'); ?> 答案:1. 考查:返回值。 因include()也是一个函数,有返回值。 成功时返回1,失败时返回错误信息。...因static $count,所以只第一次 调用get_count的时候对$count赋值 为0,第二次再进来这个函数,则不会 第二次赋值。...NULL的意思是没有值, 难道计数函数还能有1? 题目七: <?...其中注意的是&,如果有&则是对原变量操作,如果没有,则是先生成一个新变量,然后给这个变量复制,最后操作的是这个新变量。 题目八: <?php echo intval((0.1+0.7)*10); ?...因为0.1+0.7=0.8是 浮点数,0.8*10在数学计算是正整数8, 可是计算机它仍然是浮点数8,什么叫 浮点数8?

    2.5K150

    php面试题及答案

    如果var是普通变量,则返回1。正常情况下返回var的元素或属性个数。 2 请说明php.ini的safe_mode开启之后影响了哪些函数 答案:Safe_mode是php的安全模式。...PHP5的对象赋值是使用的引用赋值,如果想复制一个对象则需要使用clone方法,调用此方法是对象自动调用__clone魔术方法。...> 7 isset、empty、is_null的区别 isset 判断变量是否定义或者是否为空 变量存在返回ture,否则返回false 变量定义不赋值返回false unset一个变量返回false...变量赋值为null,返回false empty:判断变量的值是否为空,能转换为false的都是空,为空返回true,反之返回false。..."",0,"0",NULL,FALSE都认为为空,返回true 没有任何属性的对象都认为是空,返回true is_null:检测传入的值(值、变量、表达式)是否为null 定义了,但是赋值为Null,返回

    2.1K40

    彻底搞明白PHP引用的概念

    对$o2属性的操作不仅反映在$o1,也反映到$o3。其实我们之前专门有一篇文章就讲的这个问题,首先对象默认赋值就是引用,其次这个例子很好地证明了引用就是一个符号表的绑定。...大家可以参考:对象赋值PHP到底是不是引用?...引用的传递 关于引用在方法参数上的传递,最重要的是记住两点:一是方法内部修改了变量外部也变,这是引用的特性嘛;二是只能传递变量、New 语句、从函数返回的引用三种类型。...当其他地方修改原本的变量值或者返回变量值经过修改后,都会影响到所有调用这个值的地方。所以说,引用的返回是比较危险的,因为你不清楚什么时候什么地方这个值可能发生了修改,对于bug的排查非常困难。...但是一定要记住,PHP的引用是指向的符号表,对原始真实的值是不起作用的,所以即使unset掉了最原始的那个变量,对其它引用赋值变量也不会有影响!!

    62030

    PHP数据类型

    科学技术法格式定义:$b = 1.2e3 NAN是计算机科学数值数据类型的一类值,表示未定义或不可表示的值 常用is_NAN()来判断某些运算结果是否是一个数值: 结果是数值返回false 结果是NAN...php $array = array(1,2,3,4,5); ?> <?php $array = array("a"=>1,"b"=>2,"c"=>3); ?> 定义方法2:直接赋值 <?...以下情况,变量为空: 没有赋值,如“$a”. 赋值为NULL或null,如 “$b = null”....is_object 检测是否为对象类型,返回true或false var_dump 直接打印数据 PHP类型转换 (1)在要转换的变量前面加上用括号括起来的目标类型 转换操作符 解释 (int)(integer...> 进行布尔类型转化时,返回false或出现下面布尔型时,改布尔值被认定为假,否则被认为为真。

    3.5K20

    PHP经典面试题目汇总(上篇)

    3.1表单get和post提交方式的区别 get是把参数数据队列加到提交表单的action属性所指的url,值和表单内各个字段一一对应,从url可以看到;post是通过HTTPPOST机制,将表单内各个字段与其内容防止...有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false* print_r 可以打印出复杂类型变量的值(如数组、对象)以列表的形式显示,并以array...有返回值,而require没有(可能因为如此require的速度比include快),如果被包含的文件不存在的化,那么提示一个错误,但是程序继续执行下去 注意:包含文件不存在或者语法错误的时候require...传值与传引用的区别,并说明传值什么时候传引用?...变量默认总是传值赋值,那也就是说,当将一个表达式的值赋予一个变量时,整个表达式的值被赋值到目标变量,这意味着:当一个变量的赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量

    3.5K70

    php的八种基本数据类型

    php $a=0; var_dump((bool)$a);//整数型0,bool输出为false $t; var_dump((bool)$t);//没有赋值变量,bool输出为false $h=' '...开始标识符; 注意:heredoc和双引号解析php的代码 变量解析: 当字符串用双引号或 heredoc 结构定义时,其中的变量将会被解析。 这里共有两种语法规则:一种简单规则,一种复杂规则。...简单的语法规则是最常用和最方便的,它可以用最少的代码一个 string 嵌入一个变量,一个 array 的值,或一个 object 的属性。 复杂规则语法的显著标记是用花括号包围的表达式。...文件不存在时候返回布尔型,false。 ? NULL(空值) 特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。...注意:使用 (unset) $var 将一个变量转换为 null 将不会删除该变量或 unset 其值。仅是返回 NULL 值而已。

    1.3K20

    运算符

    b.布尔类型不支持自增自减             c.null类型支持自增不支持自减             d.字符类型支持自增不支持自减     注意:前缀形式表示先自增自减,进行赋值运算...$a=1; $b=0; echo $a++;//后缀先赋值,输出为原值1 echo $a; //赋值后,进行自增,所以输出1+1=2 echo ++$b; //前缀,先自增后赋值,输出0+1=1 echo... $b; //$b还是前缀的值1     ④.赋值运算符         = += -= /= %= .= *= =就是简单给变量赋值,+(-,*,/,%,.)...php //=简单的赋值 $a=20;//简单给变量a赋值 echo $a;//输出变量a,显示为20 //+=的使用,等同于左右相加,赋值左边 $b=10; $b+=5; //相当于b=b+5 echo...==(不全等)(不等于) >(大于) =(大于等于) 满足条件返回true,不满足则返回false

    56430

    PHP入门之类型与运算符

    如果给定的一个整数,溢出了整数的范围,将直接解释成float。 布尔型 布尔型细节 最简单的类型,true和false代表真和假。...• 不包括任何成员变量的对象(仅 PHP 4.0 适用) • 特殊类型 NULL(包括尚未赋值变量) • 从空标记生成的 SimpleXML 对象 除了上面那些,其他的所有值都会被认为是true...递增/递减运算符 举个例子 $i=10; $i=++$i; # ++在前,先++然后赋值。所以输出的结果为11. $i=i++; # ++在后,先赋值,然后++。...,它返回其左右参数连接后的字符串。第二个是连接赋值运算符(".="),它将右边参数附加到左边的参数之后。 举个例子。...运算符优先级 这里直接参考的PHP学习手册,按照优先级,由高到低列出下表。 ? 小结 第一部分总结了PHP的一些数据类型和运算符。在下一部分总结一些流程控制,包括分支控制、循环控制等。

    1.4K20

    最新PHP 面试、笔试题汇总(code happy)

    并说明传值什么时候传引用 变量默认总是传值赋值,那也就是说,当将一个表达式的值赋予一个变量时,整个表达式的值被赋值到目标变量,这意味着:当一个变量的赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量...php也提供了另外一种方式给变量赋值:引用赋值。...使用引用赋值,简单地将一个&符号加到将要赋值变量前(源变量) 对象默认是传引用 对于较大的数据,可以考虑传引用,这样可以节省内存的开销 二十三、PHP 不使用第三个变量实现交换两个变量的值 //方法一...PHP开发过程,如果遇到大数组等操作,那么可能造成内存溢出等问题。..., true, true, false, 13, 1 why: php 字符串==0 恒成立 php 字符串和数字相加,如果字符串开头是数字,则等于字符串开头的数字(字符串第一个位置开始,到第一个非数字和

    1.2K20
    领券