gpt4 book ai didi

PHP: "a or b"表达式是什么意思?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:06:18 24 4
gpt4 key购买 nike

遇到这段代码:

<?php
require_once 'HTTP/Session/Container/DB.php';

$s = new HTTP_Session_Container_DB('mysql://user:password@localhost/db');

ini_get('session.auto_start') or session_start(); //HERE. ??

?>

这种express在PHP中是什么意思? [a 或 b] ?

ini_get('session.auto_start') or session_start();

谢谢。

最佳答案

关键字or是“逻辑或”运算符,相当于||:

if ($x < 0 or $y < 0) // the same as:
if ($x < 0 || $y < 0)

or 的一个属性是,如果第一个操作数返回 true,则不计算第二个操作数:

  if (!isset($var) || $var === null)
# ^^^^^^^^^^^^^
# This code is never run if !isset($var) returns false.

这可以(误)用于编写“做某事或处理错误”代码:

  do_something() or handle_error()
# ^^^^^^^^^^^^^^
# If do_something() returns true, there is no error to handle,
# and handle_error() is never executed.

使用显式if可以写得更清楚:

if (!do_something())
handle_error();

关于PHP: "a or b"表达式是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11262194/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com