开发知识点-PHP从小白到拍簧片

在这里插入图片描述

从小白到拍簧片

  • 位异或运算(^ )
  • 引用符号(&)
  • strlen() 函数
  • base64_encode
  • 预定义 $_POST 变量
  • session_start($array);
  • @操作符
  • php 命令
  • set_time_limit(7200)
  • isset()
  • PHP 命名空间(namespace)
  • new 实例化类
  • extends 继承 一个类使用另一个类方法
  • error_reporting()
  • static 声明的成员变量属于静态成员变量
  • Function类型函数实际上是对象
  • :: 类中 静态方法和静态属性的引用方法
  • => 是数组成员访问符号
  • -> 是对象成员访问符号
  • defined() 检测某个常量的名称是否存在.
  • strpos() 函数
  • 关键字
    • 对象克隆/复制
  • ===是包括变量值与类型完全相等
  • ==只是比较两个数的值是否相等
  • trim()函数
  • substr() 函数
    • 魔术常量 __DIR__
  • php redis 支持
  • phpstorm远程开发配置
  • No input file specified.(apache)
  • 作业外包 学生管理系统
  • PHP实战-在线聊天室

 <?php

位异或运算(^ )

5=

0000 0000 0000 0101

^

7=

0000 0000 0000 0111

=

0000 0000 0000 0010

 function encode($D,$K){for($i=0;$i<strlen($D);$i++) {$c = $K[$i+1&15];$D[$i] = $D[$i]^$c;}return $D;
}

引用符号(&)

操作符
意为and
逻辑上表示两者属于缺一不可的关系

strlen() 函数

返回字符串的长度,中文字符串的处理使用 mb_strlen() 函数

base64_encode

base64_decode加密解密函数

预定义 $_POST 变量

收集来自 method=“post” 的表单中的值。

POST 方法的发送信息的量最大值为 8 MB(可通过设置 php.ini 文件中的 post_max_size 进行更改)

session_start($array);

用于创建新会话或者重用现有会话的内置函数; 成功开始会话返回true,反之返回false。

session_start() 函数必须位于 标签之前 启动会话 //开启Session功能
Session信息的存储与读取
session_id();//获取用户Session ID值,如需修改在括号中传值即可

利用Session变量存储信息:

$_SESSION[“Session名称”]=变量或字符串信息;

读取Session变量信息(可赋值给一个变量或者直接输出):

变量=$_SESSION[“Session名称”];

@操作符

禁止php中的所有错误,包括通知、警告甚至严重错误

php 命令

php是流行的web语言

php语言还可嵌入到html中运行

php命令功能:用于调用php解释器,管理相应的脚本php命令的语法格式:php [参数]-----常用参数说明-------q:安静模式,HTTP头输出(只有CGI)-g:在脚本中使变量为全局变量-f:解析和执行文件-a:运行PHP交互方式-b:为外部FASTCGI服务器模式(CGI)绑定路径-r:运行PHP代码,而无需使用脚本标记“..?>”-e:为调试器/分析器生成扩展信息-n:没有php.ini文件将被使用-z:加载Zend扩展文件-H:从外部工具隐藏脚本名称(文件)和参数--rf:返回有关函数名信息-l:只进行语法检查--rc:返回有关类名的信息--re:返回有关扩展名的信息--ri:名字显示--ini:返回配置文件名-C:不chdir到脚本的目录-c:在指定目录路径中查找php.ini文件,或使用指定的文件-i:PHP信息和配置-T:测量脚本重复次数的执行时间-m:在模块中显示编译-s:输出HTML语法高亮显示源代码-F:对每个输入行解析和执行文件-E:处理所有的输入行后运行PHP代码-B:处理输入行之前运行PHP代码-w:输出源,注释和空白-R:对每一个输入行运行PHP代码-v:返回版本信息

clearstatcache() 函数清除文件状态缓存

basename() 函数返回路径中的文件名部分

is_file() 函数检查指定的文件是否是常规的文件

set_time_limit(7200)

设置程序执行时间的函数
0为一直等程序执行结束。

来控制运行时间 【建议使用】

当你的页面有大量数据时, 默认是30s,
所以需要你将执行时间加长点
设定一个程式所允许执行的秒数,如果到达限制的时间,程式将会传回错误

exit() 函数输出一条消息,并退出当前脚本。 该函数是 die() 函数的别名

date_default_timezone_set(‘PRC’);

date_default_timezone_set(‘Asia/Chongqing’);

date_default_timezone_set() 函数设置脚本中所有日期/时间函数使用的默认时区

echo() 函数输出一个或多个字符串

查看php运行目录命令:
which php
/usr/bin/php

查看php-fpm进程数:
ps aux | grep -c php-fpm

查看运行内存
/usr/bin/php -i|grep mem

重启php-fpm
/etc/init.d/php-fpm restart

isset()

检测变量是否设置


PHP 命名空间(namespace)

语法要求 :
命名空间必须是程序脚本的第一条语句

重名问题:
class名 函数名 const常量名(define 无效) ------>redeclare 报错
便可 利用命名空间 进行分割区分
调用空间元素时候 :\xx\xxx();

  • 多级命名空间
    子集命名空间 - 子空间
    空间(文件)元素较多
    (TP自动加载 命名空间虚拟目录名称转化路径)
    利于 -快速 判断文件 定位

  • 三种方式引用
    在这里插入图片描述

  • 访问静态成员
    在这里插入图片描述在这里插入图片描述

  • 引入机制

  1. 空间引入

use 空间;
限定子空间访问元素;
在这里插入图片描述在这里插入图片描述在这里插入图片描述
2. 空间类元素引入

在这里插入图片描述

  • 公共空间 没有namespace关键字的
    元素应用 要注意 :
    有命名空间 include 引入公共空间——对当前空间没有影响
    优先级 查找当前空间+引用

反之亦然

尽量用完全限定空间进行引用;
在这里插入图片描述

  • TP框架 虚拟命名空间实例
    相互对应: 实际文件夹 —— 虚拟命名空间
    实现自动加载
    use 引用空间类元素

  • eg 加载模版
    在这里插入图片描述在这里插入图片描述在这里插入图片描述


new 实例化类

extends 继承 一个类使用另一个类方法

declare(encoding=‘UTF-8’);
定义多个命名空间和不包含在命名空间中的代码

error_reporting()

error_reporting(0);
设置当前脚本的错误报告级别
函数规定你给应该报告何种 PHP 错误 E_ALL | E_STRICT

static 声明的成员变量属于静态成员变量

Function类型函数实际上是对象

每个函数实际上都是 Function 类型的实例

:: 类中 静态方法和静态属性的引用方法

不需要实例化对象,直接通过类名对类中的方法进行引用

 class Test{public static $test = 1;public static function test(){}}

Test:: t e s t 来取得 test 来取得 test来取得test属性的值

Test::test(); 直接调用静态方法test

 try {//尝试执行的代码块}catch (异常类型1 异常的变量名1) { //捕获错误的代码块1}...catch (异常类型2 异常的变量名2) {//捕获错误的代码块2}finally {//最终执行的代码块}

=> 是数组成员访问符号

-> 是对象成员访问符号

比如:

$array = array("site map"=>"map.php"); //定义了一个数组
包含一个数组成员:键名为site map,值为map.php

t h i s − > this-> this>name = $value

$this 在php里是个特定的变量,它代表了类本身,
->是访问其类成员的操作符,
t h i s − > this-> this>name = $value,
这句代码意思是:将当前类的name变量的值设置为 $value.

printStackTrace对调试程序有帮助 重构获取异常栈信息
count() 函数返回数组中元素的数目

microtime() 函数返回当前Unix 时间戳的微秒数

memory_get_usage()能返回当前分配给PHP脚本的内存量,单位是字节(byte)【PHP内置函数】
使用它来调试PHP代码性能

DIRECTORY_SEPARATOR【内置常量】
使用“\”作为文件分隔符 linux上系统不认识这个标识,于是就要引入这个php内置常量了

defined() 检测某个常量的名称是否存在.

如果已定义返回 true 未定义返回 false


短路求值 计算逻辑或表达式 计算左侧如果是true,那么就不再计算右侧,直接返回true,
所以A or B;可以达到if(!A) B;的效果
如果左侧是false,那么同样会发生短路,不计算右侧直接返回false A and B;类似if(A) B;

短路求值在语意上比较接近英文,又回避了“if必加花括号”带来的视觉污染(?),
所以还算比较通行的做法(虽然严格意义上来说不算是好习惯)

defined or define
如果左定义 跳过右
否则不跳

$SERVER[‘SCRIPT_FILENAME’]本文件的绝对路径
指向当前执行脚本的绝对路径

strtoupper() 函数把字符串转换为大写

is_array() 函数用于检测变量是否是一个数组

getenv 取得系统的环境变量

putenv()
返回值:无
函数种类:PHP 系统功能
内容说明:本函数用来配置系统环境变量。

__FILE__指向当前执行脚本的绝对路径

在这里插入图片描述

PHP常量PHP_SAPI与函数php_sapi_name()
PHP运行环境检测
用来判断是使用命令行还是浏览器执行的,如果 PHP_SAPI==’cli’ 表示是在命令行下执行

三元运算符 语法:条件 ? 结果1 : 结果2
在这里插入图片描述

strpos() 函数

查找字符串在另一字符串中第一次出现的位置。

注释:strpos() 函数对大小写敏感。

注释:该函数是二进制安全的
在这里插入图片描述
获取当前操作系统类型 PHP_OS
在这里插入图片描述
is_file() 函数检查指定的文件是否是常规的文件。

如果文件是常规的文件,该函数返回 TRUE。

parse_ini_file() 函数解析一个配置文件(ini 文件),并以数组的形式返回其中的设置

在这里插入图片描述

foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement

在这里插入图片描述


关键字

对象克隆/复制

在这里插入图片描述
在这里插入图片描述

version_compare 用户对比两个【PHP规范化】版本数字字符串

PHP_VERSION:当前PHP的版本号

$_SERVER[‘SCRIPT_NAME’] 自动获取当前文件在网站中的路径

–127.0.0.1/2019/index.php

echo $_SERVER[‘SCRIPT_NAME’] ;
/2019/index.php




dirname 返回路径中的目录部分

 <?phpecho dirname("c:/testweb/home.php") . "<br />";echo dirname("/testweb/home.php");?> 

上面的代码将输出:

 c:/testweb/testweb 



/2019

str_replace 以其他字符替换字符串中的一些字符

===是包括变量值与类型完全相等

==只是比较两个数的值是否相等

trim()函数

移除字符串两侧的空白字符或其他预定义字符

substr() 函数

返回字符串的一部分

魔术常量 DIR

指向当前执行的PHP脚本所在的目录
当前执行的PHP文件为 /www/website/index.php
则__FILE__等于’/www/website/index.php’
而__DIR__等于’/www/website’
现在我们要包含当前文件目录或子目录下的文件,可以直接使用:

<?php require_once __DIR__ . 'test.inc.php'; ?>     



realpath() 函数返回绝对路径。

该函数删除所有符号连接(比如 ‘/./’, ‘/…/’ 以及多余的 ‘/’),返回绝对路径名。

若失败,则返回 false。比如说文件不存在的话




define() 函数定义一个常量

chmod() 函数改变文件模式 bool(true)

2022.2.20

文档

https://pkg.xyz/#how-to-install-composer
 php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"php composer-setup.phpphp -r "unlink('composer-setup.php');"

在这里插入图片描述

 全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。Windows 系统:
找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。
将 composer.phar 复制到 PHP 的安装目录下面,
也就是和 php.exe 在同一级目录。
在 PHP 安装目录下新建一个 composer.bat 文件,
并将下列代码保存到此文件中。@php "%~dp0composer.phar" %*
 最后重新打开一个命令行窗口试一试执行 composer --version 看看是否正确输出版本号。不要忘了经常执行 composer selfupdate 以保持 Composer 一直是最新版本哦!

php redis 支持

https://pecl.php.net/package/redis/5.3.7/windows

phpstudy 开启 redis缓存

phpstorm远程开发配置

官网下载地址:https://www.jetbrains.com/phpstorm/
java JVM
-vmargs: 说明后面是VM的参数
-Xms40m: 虚拟机占用系统的最小内存
-Xmx256m: 虚拟机占用系统的最大内存
-XX:PermSize:最小堆大小。一般报内存不足时,都是说这个太小,
堆空间剩余小于5%就会警告,建议把这个稍微设
大一点,不过要视自己机器内存大小来设置
-XX:MaxPermSize:最大堆大小。这个也适当大些
-Xmx512M的5%为25.6M,理论上要求-Xmx的数值与-XX:MaxPermSize必须大于25.6M

 把里面的参数改为

-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=128M
-XX:MaxPermSize=256M

 便可以解决内存不足的问题了,而仅仅改-Xms和-Xmx是不太合理的。

别问我这个是什么连接:http://idea.lanyus.com/

phpstorm有一大堆的骚操作,
例如git,svn版本控制,sftp,ftp,ssh,http client,代码追踪,断点,主题自定义…

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

No input file specified.(apache)

phpstudy是win系统下面一个php环境一体包,可以通过这个工具轻松实现搭建php等网站。作为动态网站,采用php等页面暴露到公网依然存在一定安全隐患,一般可通过伪静态来隐藏真实地址。

在apache扩展菜单里面,找到rewrite_module模块,把它启用。勾上

也可以直接打开apache配置文件里面,“/apache/conf/” 下的 httpd.conf 文件,通过查找“LoadModule rewrite_module”,把前面的”#”号删除

查找AllowOverride None,替换为 AllowOverride All (有多处设置,需要替换)然后保存

https://blog.csdn.net/xgocn/article/details/79334296
即可。
apache No input filespecified,今天是我们配置apache RewriteRule时出现这种问题,解决办法很简单如下

apache No input filespecified,今天是我们配置apache RewriteRule时出现这种问题,解决办法很简单如下

打开.htaccess 在RewriteRule 后面的index.php教程后面添加一个“?”

完整代码如下

.htaccess

 
RewriteEngine onRewriteCond $1 !^(index.php|images|robots.txt)RewriteRule ^(.*)$ /index.php?/$1 [L]

如果是apache服务器出问题,看看是不是的Apache 把 .php 后缀的文件解析哪里有问题了。

总结

Apache 将哪些后缀作为 PHP 解析。例如,让 Apache 把 .php 后缀的文件解析为PHP。可以将任何后缀的文件解析为 PHP,只要在以下语句中加入并用空格分开。这里以添加一个 .phtml 来示例。

AddType application/x-httpd-php .php .phtml

为了将 .phps教程作为 PHP 的源文件进行语法高亮显示,还可以加上:

AddType application/x-httpd-php-source .phps

用通常的过程启动 Apache(必须完全停止 Apache 再重新启动,而不是用 HUP 或者USR1 信号使 Apache 重新加载)。

APACHE服务器出现No input file specified.解决方案 thinkcmf程序默认的.htaccess里面的规则:

 <IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

“No input file specified.”,是没有得到有效的文件路径造成的。

修改伪静态规则,如下:

 <IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
</IfModule>

就是正则结果“/$1”前面多加了一个“?”号。。

作业外包 学生管理系统

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

地址: https://pan-yz.chaoxing.com/views/external/thumb.html?name=4.%E5%AE%9E%E4%B9%A0%E9%A1%B9%E7%9B%AE1-%E5%AD%A6%E7%94%9F%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F.pdf&pagenum=43&thumb=https%3A%2F%2Fs3.ananas.chaoxing.com%2Fdoc%2F75%2Fc0%2Ff6%2Fb591b59d4ba8ad7e46aa996d673f3f1e%2Fthumb%2F

在这里插入图片描述在这里插入图片描述

PHP实战-在线聊天室

  • Workerman,高性能socket服务框架
  • 纯PHP开发的开源高性能的PHP socket 服务框架
  • 更底层更通用的socket服务框架
  • 开发tcp代理、T子代理、做游戏服务器、邮件服务器、ftp服务器、甚至开发一个php版本的redis、php版本的数据库、php版本的nginx、php版本的php-fpm等等
  • 类似一个PHP版本的nginx,核心也是多进程+Epoll+非阻塞IO。
  • Workerman每个进程能维持上万并发连接
  • 本身常住内存,不依赖Apache、nginx、php-fpm这些容器,拥有超高的性能
  • 同时支持TCP、UDP、UNIXSOCKET,支持长连接,支持Websocket、HTTP、WSS、HTTPS等通讯协以及各种自定义协议
  • 拥有定时器、异步socket客户端、异步Mysql、异步Redis、异步Http、异步消息队列等众多高性能组件

  • 做即时通讯重要的就是保持长连接,实现客户端和客户端的通讯

简单实例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/180429.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FreeRTOS_事件标志组

目录 1. 事件标志组简介 2. 创建事件标志组 2.1 函数 xEventGroupCreate() 2.2 函数 xEventGroupCreateStatic() 3. 设置事件位 3.1 函数 xEventGroupClearBits() 3.2 函数 xEventGroupClearBitsFromISR() 3.3 函数 xEventGroupSetBits() 3.4 函数 xEventGroupSetB…

leetcode:387. 字符串中的第一个唯一字符

一、题目 函数原型 int firstUniqChar(char* s) 二、算法 设置一个大小为26的字符数组&#xff0c;位置0 - 25 分别对应字符 a - z 。遍历两次字符串&#xff0c;第一次记录下每个字符出现的次数&#xff0c;第二次检查哪个字符最先遍历到且出现次数为1&#xff0c;返回该字符即…

uniapp新建的vuecli项目启动报错并且打包失败的问题(已解决)

我的项目新建流程如下 运行之后就是如下报错 解决办法&#xff1a; 安装如下依赖&#xff1a; npm i postcss-loader autoprefixer8.0.0 npm run build 编译失败 安装如下依赖&#xff1a; npm install postcss8.2.2 最终package.json文件如下 {"name": "ls…

【Vue】vant上传封装方法,van-uploader上传接口封装

项目场景&#xff1a; 问题描述 提示&#xff1a;这里描述项目中遇到的问题&#xff1a; 在移动端项目中&#xff0c;使用vant组件上传&#xff0c;但是vant没有上传方法&#xff0c;需要自己写。 html代码 <van-uploader v-model"fileList" :max-size"50…

jvm实践

说一下JVM中的分代回收 堆的区域划分 1.堆被分为了两份:新生代和老年代[1:2] 2.对于新生代&#xff0c;内部又被分为了三个区域。Eden区&#xff0c;幸存者区survivor(分成from和to)[8:1:1] 对象回收分代回收策略 1.新创建的对象&#xff0c;都会先分配到eden区 2.当伊园内存…

谷歌推出基于AI的产品图像生成工具;[微软免费课程:12堂课入门生成式AI

&#x1f989; AI新闻 &#x1f680; 谷歌推出基于AI的产品图像生成工具&#xff0c;帮助商家提升广告创意能力 摘要&#xff1a;谷歌推出了一套基于AI的产品图像生成工具&#xff0c;使商家能够利用该工具免费创建新的产品图像。该工具可以帮助商家进行简单任务&#xff08;…

李宏毅机器学习笔记.Flow-based Generative Model(补)

文章目录 引子生成问题回顾&#xff1a;GeneratorMath BackgroundJacobian MatrixDeterminant 行列式Change of Variable Theorem简单实例一维实例二维实例 网络G的限制基于Flow的网络构架G的训练Coupling LayerCoupling Layer反函数计算Coupling Layer Jacobian矩阵计算Coupli…

Windows 开启 Kerberos 的火狐 Firefox 浏览器访问yarn、hdfs

背景&#xff1a;类型为IPA或者MIT KDC&#xff0c;windows目前只支持 firefoxMIT Kerberos客户端的形式&#xff0c;其他windows端浏览器IE、chrome、edge&#xff0c;没有办法去调用MIT Kerberos Windows客户端的GSSAPI验证方式&#xff0c;所以均无法使用 Windows 开启 Kerb…

关于ROS的网络通讯方式TCP/UDP

一、TCP与UDP TCP/IP协议族为传输层指明了两个协议&#xff1a;TCP和UDP&#xff0c;它们都是作为应同程序和网络操作的中介物。 **TCP&#xff08;Transmission Control Protocol&#xff09;协议全称是传输控制协议&#xff0c;是一种面向连接的、可靠的、基于字节流的传输…

VSCode实用远程主机功能

作为嵌入式开发者&#xff0c;经常在各种系统平台或者开发工具之间切换&#xff0c;比如你的代码在Linux虚拟机上&#xff0c;如果不习惯在Linux下用IDE&#xff0c;那么我尝试将Linux的目录通过samba共享出来&#xff0c;在windows下用网络映射盘的方式映射出来&#xff0c;VS…

23种设计模式(创建型、构造型、行为型)

目录 设计模式一、创建型设计模式1.1、简单工厂模式(SimpleFactory)1.2、工厂方法&#xff08;Factory Method&#xff09;1.3、 抽象工厂&#xff08;Abstarct Factory&#xff09;1.4、生成器模式&#xff08;Builder&#xff09;1.5、 原型模式&#xff08;Prototype&#x…

【LeetCode刷题-队列】--933.最近的请求次数

933.最近的请求次数 class RecentCounter {Queue<Integer> queue new LinkedList<>();public RecentCounter() {}public int ping(int t) {queue.offer(t);while(t - queue.peek() > 3000){queue.poll();}return queue.size();} }/*** Your RecentCounter obje…

CDN与WAF防火墙:强强联手,守护您的网站安全

随着互联网的普及&#xff0c;网站安全问题变得愈发重要。恶意攻击、数据泄露和服务中断等问题都可能给网站和用户带来严重损害。在保护网站免受这些威胁的过程中&#xff0c;内容分发网络&#xff08;CDN&#xff09;和Web应用程序防火墙&#xff08;WAF&#xff09;是两个强大…

【数据集处理】基于Python处理EAR5数据

基于Python处理EAR5数据 1 EAR5数据简介2 数据集处理准备工作&#xff1a;xarray库安装2.1 数据预处理-剔除异常值 参考 1 EAR5数据简介 ERA5是ECMWF&#xff08;欧洲中期天气预报中心&#xff09;对1950年1月至今全球气候的第五代大气再分析数据集。 包含了四个基本变量(日…

基于Qt命令行处理XML文件读写

Qt源码在后面,文本介绍Qt国际化语言和XML # XML基础(一) ## 1、概述 ### 1.1 定义(xml是个啥玩意儿?) XML(extensible Markup Language)俗称差妹儿,专业称之为:可拓展标记语言。 (1)何为标记,指的是一种标记语言,或者标签语言,即用一系列的标签来对数据进行…

0008Java安卓程序设计-ssm基于Android平台的健康管理系统

文章目录 **摘要**目录系统实现开发环境 编程技术交流、源码分享、模板分享、网课教程 &#x1f427;裙&#xff1a;776871563 摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,…

CSS必学:元素之间的空白与行内块的幽灵空白问题

作者:WangMin 格言:努力做好自己喜欢的每一件事 CSDN原创文章 博客地址 &#x1f449; WangMin 我们在开发的过程中&#xff0c;难免会出现一些难以预料的问题。那么其中&#xff0c;CSS空白现象就是非常常见的问题之一。虽然它已经被发现很久&#xff0c;但仍然有许多新手和经…

AI:54-基于深度学习的树木种类识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

Spring Security OAuth 2.0 资源服务器— JWT

目录 一、JWT的最小依赖 二、JWT的最基本配置 1、指定授权服务器 2、初始预期&#xff08;Startup Expectations&#xff09; 3、运行时预期&#xff08;Runtime Expectations&#xff09; 三、JWT认证是如何工作的 四、直接指定授权服务器 JWK Set Uri 五、提供 audie…

让SOME/IP运转起来——SOME/IP系统设计(上)

什么是SOME/IP&#xff1f; SOME/IP&#xff08;Scalable service-Oriented MiddlewarE over IP&#xff09;是AUTOSAR应用层的协议&#xff0c;是基于IP协议的面向服务的可拓展性的中间件。 SOME/IP中主要定义了&#xff1a; 数据的序列化&#xff1a;SOME/IP支持的数据类型…