mysql中的$跟_关于php中mysql_connect($host,$user,$pass) or die(mysql_error())写法的疑问

一般在连接数据库的时候,语句都会这样写:$link=mysql_connect($host,$user,$pass)ordie(mysql_error());关于这条语句,我是这么理解的:php会认为后边的是一个逻辑表达式。依据逻辑...

一般在连接数据库的时候,语句都会这样写:

$link = mysql_connect($host,$user,$pass) or die(mysql_error());

关于这条语句,我是这么理解的:php会认为后边的是一个逻辑表达式。依据逻辑表达式的特点,如果前一条件为真(即成功连接上了数据库),那么就不会计算后边的表达式是否为真。如果前边的为假(即连接数据库失败),那么就要计算后边的表达式,就会执行die()语句。但问题是,为什么我把die()语句换成别的就不行了呢?比如换成echo 就会报错!

谁来解释一下啊!!

对JovenShao说:这条语句的意思我很清楚,并不用在重复的解释。请明白的说一下为什么用echo语句不行。

对jqqwww 说:我知道下边的语句都会出错。但是现在不是sql语句出错的问题。二是解释器会直接报错,说遇到不期望的echo。

我可以把我想应用到的地方告诉大家:我有很多数据库要连接,如果这个数据库不存在则继续连接下一个执行操作。所以我想写成这样: mysql_connect($host,$user,$pass) or continue;

但是php引擎会报错!

array_sum兄说的还是很有道理的,虽然我感觉不完全对。我现在的理解是这样的:

echo、print、continue这类的语句都是不能跟的,因为他们根本不是函数(你去查php手册就会有这样的话:echo() is not actually a function (it is a language construct)。意思是说:echo并不是真正意义上的函数,它只是一个语言构造),不是函数,就没有任何的返回值。没有返回值php引擎就无法判断它的真假,所以这条逻辑表达式就是错误的。

谁还有更好的见解,希望能拿出来共享。大家多多交流!

展开

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值