我应该在这里做什么?
=& 参考
参考任务操作员在PHP, =& 什么意思是“=&”和“&="操作员在PHP? 什么意思是“&=”和“=&”操作员在PHP?
PHP 中的奇怪打印行为?
= 任命运营商
三种不同的平等
如何区分PHP平等(==双等)和身份(===三等)比较操作员?PHP!=和 ==操作员3个不同的平等类型和(严格)较大的/较小的比较在PHP
=== 比较运营商
比特币运营商
上一篇: 逻辑运营商
[ ] Arrays (自 PHP 5.4 以来简短的合成)
PHP 短标签是否可用?
二角形字符范围
# One-line shell 风格评论
NullSafe Operator 通话(自 PHP 8.0 以来)
PHP 中有“零安全操作员”吗?
问题:
“&”在PHP中意味着什么?
PHP “&” 操作员
使生活更容易,一旦我们习惯了(仔细检查下面的例子)
通常会设置为 $a 和 $b 的检查比特。
你甚至注意到这些电话是如何工作的吗?
error_reporting(E_ERROR | E_WARNING | E_PARSE);
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
error_reporting(E_ALL & ~E_NOTICE);
error_reporting(E_ALL);
因此,上面的一切背后是比特币运营商和比特币的游戏。
其中一个有用的案例是简单的配置,如下所示,这样一个完整的字段可以为您存储成千上万的组合。
大多数人已经阅读了这些文件,但并没有依赖于这些小型运营商的现实世界使用案例。
假设你会爱的
<?php
class Config {
// our constants must be 1,2,4,8,16,32,64 ....so on
const TYPE_CAT=1;
const TYPE_DOG=2;
const TYPE_LION=4;
const TYPE_RAT=8;
const TYPE_BIRD=16;
const TYPE_ALL=31;
private $config;
public function __construct($config){
$this->config=$config;
if($this->is(Config::TYPE_CAT)){
echo 'cat ';
}
if($this->is(Config::TYPE_DOG)){
echo 'dog ';
}
if($this->is(Config::TYPE_RAT)){
echo 'rat ';
}
if($this->is(Config::TYPE_LION)){
echo 'lion ';
}
if($this->is(Config::TYPE_BIRD)){
echo 'bird ';
}
echo "\n";
}
private function is($value){
return $this->config & $value;
}
}
new Config(Config::TYPE_ALL);
// cat dog rat lion bird
new Config(Config::TYPE_BIRD);
//bird
new Config(Config::TYPE_BIRD | Config::TYPE_DOG);
//dog bird
new Config(Config::TYPE_ALL & ~Config::TYPE_DOG & ~Config::TYPE_CAT);
//rat lion bird
NullSafe 运营商
在 PHP 8.0 中添加
它是 NullSafe 运营商,如果您尝试引用函数或从零中获取值,则返回零。
$objDrive = null;
$drive = $objDrive?->func?->getDriver()?->value; //return null
$drive = $objDrive->func->getDriver()->value; // Error: Trying to get property 'func' of non-object
Nullsafe 运营商不使用序列密钥:
$drive['admin']?->getDriver()?->value //Warning: Trying to access array offset on value of type null
$drive = [];
$drive['admin']?->getAddress()?->value //Warning: Undefined array key "admin"
运营商类型
instanceof 是用来确定一个 PHP 变量是否是一个特定的类别的即时对象。
<?php
class mclass { }
class sclass { }
$a = new mclass;
var_dump($a instanceof mclass);
var_dump($a instanceof sclass);
上面的例子将产生:
bool(true)
bool(false)
原因: 上例 $a 是 mclass 的对象,所以只使用 mclass 数据而不是 sclass 的例子。
继承的例子
<?php
class pclass { }
class childclass extends pclass { }
$a = new childclass;
var_dump($a instanceof childclass);
var_dump($a instanceof pclass);
上面的例子将产生:
bool(true)
bool(true)
与克隆的例子
<?php
class cloneable { }
$a = new cloneable;
$b = clone $a;
var_dump($a instanceof cloneable);
var_dump($b instanceof cloneable);
上面的例子将产生:
bool(true)
bool(true)
什么是 \ (backslash) 符号在 PHP
它用于逃避字符串类型或更改特定案例:
例子:
在这里使用 \r\n 和 \n 转到新行(如输入按钮)
echo "Hello world \n\r I am Herakl";
否则,您可以使用 PHP_EOL. 有一些例外. 首先,它只能在两个引用(")状态使用。
echo " Hello \\ I am robot";
在 stackoverflow 中,它看不见正确。
Backslashes 也使用在名称空间或使用条件名称:
namespace App\Http\Controllers;
use App\Models;
此外,您还应该参观关于 https://www.php.net/manual/en/function.addslashes.php 的漏洞