PHP empty函数报错解决办法

 这篇文章主要介绍了PHP empty函数在检测一个非变量情况下报错的解决办法,需要的朋友可以参考下

PHP开发时,当你使用empty检查一个函数返回的结果时会报错:Fatal error: Can't use function return value in write context
 
例如下面的代码:
 
 代码如下:
<?php 
echo empty(strlen('test'));
 
转到PHP手册里面查看,在empty函数描述的地方有以下文字:
 
代码如下:Note :  empty()  only checks variables as anything else will result in a parse error. In other words, the following will not work: empty(trim($name)).
得出结论:empty()只检测变量,检测任何非变量的东西都将导致解析错误!
 
因此,我们不能拿empty来直接检测函数返回的值,上面例子的解决方法如下:
 
 代码如下:
<?php
$length = strlen('test');
echo empty($length);
 
 

时间: 2024-11-01 15:20:59

PHP empty函数报错解决办法的相关文章

PHP empty函数报错解决办法_php技巧

PHP开发时,当你使用empty检查一个函数返回的结果时会报错:Fatal error: Can't use function return value in write context 例如下面的代码: 复制代码 代码如下: <?php echo empty(strlen('test')); 转到PHP手册里面查看,在empty函数描述的地方有以下文字: 复制代码 代码如下: Note :  empty()  only checks variables as anything else wil

eclipse导入appcompat项目报错解决办法

eclipse导入appcompat项目报错解决办法 我们在eclipse导入开源项目后,经常会发现找不到类似Theme.AppCompat.Light.DarkActionBar的style,解决办法也比较简单,就是导入com.android.support:appcompat-v7包,不过又两点需要注意: 不能只导入appcompat-v7.jar包,而是要导入appcompat-v7项目 因为这个项目包含有资源文件,只导入jar包没有效果,这个项目地址是在: -\android-sdk\e

[Unity3d]Unity web平台 SecurityException报错解决办法

最近被一个问题困扰了好久,连续三天都一直在想办法解决,各种能参考的资料都看了,包括硬着头皮看全英文的官网,努力寻求解决办法,昨晚搞到凌晨深夜两点可还是失望的离开了办公室,到底是什么问题呢?我相信如果Unity3D做网络游戏或者动态加载资源的同志们都会碰到,那就是Unity3d动态加载资源然后切换到web平台会报错,关于security的一个错误,官方的解释是:http://docs.unity3d.com/Documentation/Manual/SecuritySandbox.html,努力看

configure: error: OpenSSL libcrypto not found 报错解决办法

今天安装一个ss代理的时候发生一个报错,./configure提示如下: configure: error: OpenSSL libcrypto not found crypto是是OpenSSL 加密库[lib], 需要openssl-devel包. 解决办法: yum -y install openssl-devel  问题搞定.

sysctl -P net.bridge.bridge-nf-call-ip6tables报错解决办法

问题症状 修改 linux 内核文件 #vi /etc/sysctl.conf后执行sysctl  -P 报错 error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key error: "net.bridge.bridge-nf-call-iptables" is an unknown key error: "net.bridge.bridge-nf-call-arptables"

wordpress博客feed页面报错解决办法

google chrome报的错误如下: This page contains the following errors: error on line 4 at column 6: XML declaration allowed only at the start of the document Below is a rendering of the page up to the first error.   翻译过来的错误就是:xml文档申明只能在文档的开头部分. 于是我点开chrome的源文

启动libvirtd报错解决办法:libvirtd: relocation error: libvirtd

今天从公司一个闲置电脑上装几个kvm耍耍docker,不料安装没有那么顺利,启动libvirtd有如下报错: [root@kvmmaster lib64]# service libvirtd restart 正在关闭 libvirtd 守护进程:                               [失败] 启动 libvirtd 守护进程:libvirtd: relocation error: libvirtd: symbol dm_task_get_info_with_deferre

新买的dell电脑将预装的win8换win7重启报错解决办法

Win8换win7 bios 识别不到usb选项 按以下操作即可: 把Secure Boot control 改为Disabled 的,F10保存重启,F12进入bios选择usb启动即可:   安装完系统重启报错 安装完成系统重启后可能会出现下面这种情况:   解决方法如下: 按F2 设置bios选项:   F10保存退出重启即可.

Win10打开云盘报错怎么办 Win10打开云盘报错解决办法

Win10打开云盘报错:   操作步骤: 提示:修改注册表有风险,请提前备份数据.   请将把下面得内容保存为.reg格式打开就可以了: Windows Registry Editor Version 5.00 [[HKEY_CLASSES_ROOTFoldershellexplorecommand] "DelegateExecute"="{11dbb47c-a525-400b-9e80-a54615a090c0}" [HKEY_CLASSES_ROOTFolder