进制和整型
整型值可以使用十进制,十六进制,八进制或二进制表示,前面可以加上可选的符号(- 或者 +)。

注意:要使用八进制表达,数字前必须加上 0。要使用十六进制表达,数字前必须加上 0x。要使用二进制表达,数字前必须加上 0b。

<?php
$a = 1234; // 十进制数
$b = -123; // 负数
$c = 0123; // 八进制数 (等于十进制 83)
$d = 0x1A; // 十六进制数 (等于十进制 26)
?>

整数溢出
如果给定的一个数超出了 integer 的范围,将会被解释为 float。同样如果执行的运算结果超出了 integer 范围,也会返回 float。
对于32位的操作系统,最大的整型是2147483647,即2的31次方,最小为-2的31次方。本次实验环境:PHP 7.2,Ubuntu 14.04。

<?php

$a = 123445566;
$b = 9223372036854775807;
$c = 9223372036854775808;
$d = 50000000000000 * 1000000;

var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);

执行得到结果为:

int(123445566)
int(9223372036854775807)
float(9.2233720368548E+18)
float(5.0E+19)

ubuntu版本是22.04.3 安装的 mysql-server 是 mysql 8.0

默认账号密码:

sudo cat /etc/mysql/debian.cnf

[client]
host     = localhost
user     = debian-sys-maint
password = xezrqqkk9Dely8hv
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host     = localhost
user     = debian-sys-maint
password = xezrqqkk9Dely8hv
socket   = /var/run/mysqld/mysqld.sock

连接数据库,并修改密码(账户密码替换成你自己的):

mysql -u debian-sys-maint -p xezrqqkk9Dely8hv
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';FLUSH PRIVILEGES;

报错问题:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

修改mysql配置文件,原本是空的只有[mysql]一行,增加如下配置,重启mysql服务

sudo vim /etc/mysql/conf.d/mysql.cnf

[mysql]

[client]
socket=/var/run/mysqld/mysqld.sock

[mysqld]
socket=/var/run/mysqld/mysqld.sock

这个很可能是电脑上因为安装了其它软件所影响了

一、情况1
网上查询也有多个文章内容说是因为安装了“某某翻译软件”开启了划词翻译的功能,解决办法退出翻译软件尝试是否正常

二、钉钉软件所致
我这个情况就是,没有安装翻译软件,只有IDE及浏览器安装得有相关插件,IDE和浏览器关了也不行。

值得注意的一个点是,今天打开电脑托盘上多出一个“AI助理”,这个是钉钉的功能,右键设置就会打开钉钉的设置界面,可以在钉钉选择不显示系统托盘图标。我在想是不是因为钉钉更新了功能导致的。

退出钉钉后就恢复正常了,最后才断定居然是钉钉所致。

钉钉导致xshell自动发送ctrl+c

钉钉更新的“AI助理”功能导致xshell自动发送ctrl+c,关掉以下功能就恢复正常了

点自己的头像-打开设置-通用-AI助理,关闭“选中文本打开工具栏”的功能

1.png