红帝 发布的文章 - 第 5 页 - 网络编程与渗透技术笔记
首页
Search
1
Java编程小练习题目
23 阅读
2
Centos7.9系统如何换国内镜像源?
18 阅读
3
用Java编写九九乘法口诀表
17 阅读
4
全开源图床系统源码
17 阅读
5
PHP在线加密系统源码
17 阅读
Kali Linux
综合渗透注入
网站搭建与运维
编程开发
Java教程
Go教程
PHP教程
Python教程
MySQL
工具与脚本
网安竞赛
源码文件
漏洞百科
iAPP
登录
/
注册
找到
207
篇与
红帝
相关的结果
- 第 5 页
2024-07-21
PHP运算符
PHP 运算符是用于执行各种操作(如算术运算、比较、逻辑运算、字符串连接等)的符号。在 PHP 中,运算符的命名主要是基于它们的功能和用法,而不是像变量或函数那样可以自定义名称。以下是一个关于 PHP 运算符的详细教程,包括它们的分类、命名、赋值以及使用方法。 一、PHP 运算符的分类 PHP 中的运算符可以分为以下几类: 算术运算符:用于执行数学运算,如加法、减法、乘法、除法等。 加法 (+) 减法 (-) 乘法 (*) 除法 (/) 取模(求余数)(%) 取整(PHP 中没有单一的取整运算符,但提供了如 intval(), floor(), ceil(), round() 等函数) 递增 (++) 和递减 (--) 赋值运算符:用于将值赋给变量。 基本赋值 (=) 组合赋值(如 +=, -=, *=, /=, %=, .=) 引用赋值 (&,用于将一个变量的引用赋给另一个变量) 比较运算符:用于比较两个值。 等于 (==) 不等于 (!=) 恒等 (===,值和类型都相等) 不恒等 (!==,值或类型不相等) 大于 (>) 小于 (<) 大于等于 (>=) 小于等于 (<=) 逻辑运算符:用于执行逻辑运算。 逻辑与 (and 或 &&) 逻辑或 (or 或 ||) 逻辑非 (! 或 not) 逻辑异或 (xor) 位运算符:用于对整数的二进制位进行操作。 按位与 (&) 按位或 (|) 按位异或 (^) 按位非 (~) 左移 (<<) 右移 (>>) 字符串运算符:主要用于连接字符串。 连接 (.) 错误控制运算符:用于控制错误信息的显示。 错误控制 (@) 类型运算符:用于确定一个对象是否属于某个类的实例。 instanceof 执行运算符:用于执行外部命令并返回输出。 反引号 (\`\`) 或 shell_exec() 函数 数组运算符:用于数组的比较和合并。 相等 (==) 和全等 (===) 不等 (!=) 和不全等 (!==) 联合 (+) 用于合并两个数组 二、赋值运算符的详细使用方法 赋值运算符用于将值或表达式的结果赋给变量。以下是赋值运算符的详细使用方法: 基本赋值 (=) $a = 5; // 将值 5 赋给变量 $a 组合赋值 加等于 (+=):将右值加到左变量并赋值。 $a = 5; $a += 3; // 等价于 $a = $a + 3; $a 的值变为 8 减等于 (-=):将右值从左变量中减去并赋值。 $a = 5; $a -= 2; // 等价于 $a = $a - 2; $a 的值变为 3 乘等于 (*=):将左变量乘以右值并赋值。 $a = 5; $a *= 3; // 等价于 $a = $a * 3; $a 的值变为 15 除等于 (/=):将左变量除以右值并赋值。 $a = 10; $a /= 2; // 等价于 $a = $a / 2; $a 的值变为 5.0 模等于 (%=):将左变量对右值取模并赋值。
编程开发
PHP教程
# PHP
红帝
1年前
0
4
0
2024-07-21
PHP字符串
PHP 中的字符串是用来存储文本的数据类型。在 PHP 中,字符串可以用单引号(')、双引号(")或定界符(heredoc 或 nowdoc 语法)来定义。下面是一个关于 PHP 字符串的详细教程,包括命名(虽然字符串本身并不直接“命名”,但我们可以将它们赋值给变量以便引用)、赋值以及使用方法。 1. 字符串的赋值 在 PHP 中,字符串可以赋值给变量,以便在脚本中重复使用。 $greeting = 'Hello, world!'; $quote = "A journey of a thousand miles begins with a single step.";2. 字符串的声明方式 单引号:不会解析字符串中的变量和特殊字符(除了单引号和反斜杠)。 $name = 'John'; echo 'Hello, $name!'; // 输出: Hello, $name! 双引号:会解析字符串中的变量和特殊字符(如 \n 表示换行)。 $name = 'John'; echo "Hello, $name!"; // 输出: Hello, John! Heredoc 和 Nowdoc:用于定义长字符串,Heredoc 会解析变量,而 Nowdoc 不会。 $name = 'John'; echo <<<EOD Hello, $name! EOD; // 输出: Hello, John! echo <<<'EOD' Hello, $name! EOD; // 输出: Hello, $name!3. 字符串的连接 可以使用点(.)操作符来连接两个或多个字符串。 $firstName = 'John'; $lastName = 'Doe'; $fullName = $firstName . ' ' . $lastName; echo $fullName; // 输出: John Doe4. 字符串的访问和修改 访问:可以使用方括号([])语法来访问字符串中的特定字符。 $str = 'Hello'; echo $str[1]; // 输出: e注意:字符串索引是从 0 开始的。 修改:虽然 PHP 中的字符串是不可变的(即不能直接修改字符串中的字符),但你可以通过组合字符串来“修改”它。 $str = 'Hello'; $str = $str[0] . 'ello World'; echo $str; // 输出: Hello World5. 字符串函数 PHP 提供了大量的字符串函数来处理字符串,比如 strlen()(获取字符串长度)、strpos()(查找字符串首次出现的位置)、strtolower()(将字符串转换为小写)、strtoupper()(将字符串转换为大写)等。 $str = 'Hello, World!'; echo strlen($str); // 输出: 13 echo strpos($str, 'World'); // 输出: 7 echo strtolower($str); // 输出: hello, world! echo strtoupper($str); // 输出: HELLO, WORLD!6. 字符串格式化 sprintf():用于根据格式化字符串来格式化数据。 $number = 123; $formatted = sprintf("There are %d monkeys in the tree.", $number); echo $formatted; // 输出: There are 123 monkeys in the tree. vsprintf():与 sprintf() 类似,但允许你传递一个参数数组而不是多个参数。 7. 注意事项 字符串在 PHP 中是不可变的,这意呀着一旦字符串被创建,你就不能改变它的内容(但你可以通过操作变量来“改变”字符串的值)。 字符串索引是从 0 开始的。 当使用双引号定义的字符串时,PHP 会解析其中的变量和特殊字符(如 \n 表示换行)。如果你不希望这种解析发生,应该使用单引号或 Nowdoc 语法。 通过这个教程,你应该对 PHP 中的字符串有了全面的了解,包括如何定义、赋值、连接、访问、修改字符串,以及如何使用字符串函数和格式化字符串。
编程开发
PHP教程
# PHP
红帝
1年前
0
5
0
2024-07-21
PHP常量
PHP 常量是在脚本执行期间其值不会改变的量。它们通常用于存储不经常改变的值,如配置选项、数据库连接信息等。在 PHP 中,常量与变量不同,一旦定义就不能被重新定义或取消定义(直到脚本执行结束)。下面是关于 PHP 常量的详细教程,包括命名、赋值以及使用方法。 1. 定义常量 PHP 使用 define() 函数来定义常量。define() 函数的语法如下: bool define ( string $name , mixed $value [, bool $case_insensitive = false ] ) $name 是常量的名称,即标识符。 $value 是常量的值。 $case_insensitive 是可选参数,如果设置为 true,则常量名称在脚本中对大小写不敏感。默认是 false,即大小写敏感。 示例: define("GREETING", "Hello world!"); echo GREETING; // 输出: Hello world!2. 常量的命名规则 常量名默认是大小写敏感的。但是,如果你在使用 define() 函数时,将 $case_insensitive 参数设置为 true,则常量名在脚本中变得对大小写不敏感。 常量名通常由大写字母组成,这是 PHP 社区中的一种约定俗成的做法,以提高代码的可读性。 常量名可以是任何有效的标签名,但最好以有意义的单词或缩写组成,并用下划线分隔,以清楚地表示其用途。 3. 使用常量 一旦定义了常量,你就可以在脚本的任何地方(除了定义它的文件之外,如果你使用了 include 或 require)通过其名称来访问它的值。由于常量一旦被定义就不能被重新定义,所以它们的值在脚本执行期间是固定的。 示例: define("PI", 3.14159); $circumference = 2 * PI * radius; // 假设 $radius 已经被定义 echo $circumference; // 输出圆的周长4. 预定义常量 PHP 提供了一些预定义的常量,这些常量在 PHP 脚本执行时就已经定义好了,不需要你手动定义。例如: __FILE__:当前文件的完整路径和文件名。 __LINE__:文件中的当前行号。 __DIR__:文件所在的目录。 PHP_VERSION:当前 PHP 版本的字符串表示。 PHP_INT_MAX:整型能表示的最大值。 5. 注意事项 常量一旦被定义,就不能被取消定义或重新赋值(除非在脚本执行期间重新启动)。 常量名可以包含字母、数字和下划线,但不能以数字开头。 尽管技术上可以,但应避免使用与 PHP 保留关键字同名的常量名。 通过以上内容,你应该对 PHP 常量有了全面的了解,包括如何定义、命名、赋值以及如何在脚本中使用它们。
编程开发
PHP教程
# PHP
红帝
1年前
0
5
0
2024-07-21
PHP类型比较
PHP 类型比较 虽然 PHP 是弱类型语言,但也需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较,包含松散和严格比较。 松散比较:使用两个等号 == 比较,只比较值,不比较类型。 严格比较:用三个等号 === 比较,除了比较值,也比较类型。 例如,"42" 是一个字符串而 42 是一个整数。FALSE 是一个布尔值而 "FALSE" 是一个字符串。 实例 <?php if(42 == "42") { echo '1、值相等'; } echo PHP_EOL; // 换行符 if(42 === "42") { echo '2、类型相等'; } else { echo '3、类型不相等'; } ?>以上实例输出结果为: 1、值相等 3、类型不相等 PHP中 比较 0、false、null 测试代码: 实例 <?php echo '0 == false: '; var_dump(0 == false); echo '0 === false: '; var_dump(0 === false); echo PHP_EOL; echo '0 == null: '; var_dump(0 == null); echo '0 === null: '; var_dump(0 === null); echo PHP_EOL; echo 'false == null: '; var_dump(false == null); echo 'false === null: '; var_dump(false === null); echo PHP_EOL; echo '"0" == false: '; var_dump("0" == false); echo '"0" === false: '; var_dump("0" === false); echo PHP_EOL; echo '"0" == null: '; var_dump("0" == null); echo '"0" === null: '; var_dump("0" === null); echo PHP_EOL; echo '"" == false: '; var_dump("" == false); echo '"" === false: '; var_dump("" === false); echo PHP_EOL; echo '"" == null: '; var_dump("" == null); echo '"" === null: '; var_dump("" === null);以上实例输出结果为: 0 == false: bool(true) 0 === false: bool(false) 0 == null: bool(true) 0 === null: bool(false) false == null: bool(true) false === null: bool(false) "0" == false: bool(true) "0" === false: bool(false) "0" == null: bool(false) "0" === null: bool(false) "" == false: bool(true) "" === false: bool(false) "" == null: bool(true) "" === null: bool(false) 1791863413-572055b100304_articlex.png图片 xxxxphp.png图片
编程开发
PHP教程
# PHP
红帝
1年前
0
6
0
2024-07-21
规则之树RuleApi搭建教程
RuleApi是一款Java语言开发的API程序,用于快速构筑自己的社区,文章博客,资源论坛等后端API。它起源于国产开源程序Typecho数据库,并支持与Typecho网站对接,但目前已经支持独立运行。 目前快捷安装是通过Linux下一键脚本实现环境和程序的安装,但RuleApi作为Springboot框架开发的程序,理论上可以在所有支持java环境的操作系统中运行。如果你使用的是CentOS系统,则可以继续阅读此文档完成安装,如果是其它操作系统,请阅读手动安装的文章。 请勿将本程序用于诈骗、色情、赌博、木马、病毒等违法行为,如有违反该条例,我们将配合公安机关追究法律责任!目前将响应相关法律政策,逐步加入API封禁机制,违法违规站点将直接永久禁用API,届时将无法使用,无法安装。 请认真看完所有的叙述,不要只看一半教程就开始操作,出错了又来说有Bug! 教程开始 第一步:前期准备部分 服务器配置要求 最低配置:1核CPU 700M运行内存 推荐配置:2核CPU 2G运行内存 系统要求:CentOS7.X&Ubuntu,建议可以安装好宝塔面板(方便管理) 前置要求 1.Typecho(1.0 or 1.1 or 1.2):可选择不安装。Typecho是一款国内有名的个人博客开源程序,拥有丰富的模板和插件生态。 2.Redis(5.0-7.0):推荐6.0,Redis是现在最受欢迎的NoSQL数据库之一。 3.Mysql(5.5-5.7):推荐5.6 4.准备一个域名用于访问RuleApi Typecho Typecho是一款php语言开发的国产开源程序,RuleApi起源于Typecho,并完美支持Typecho数据库。如果你需要额外的网页访问端,则可以先安装Typecho。如果你不需要,则直接跳过这里,进入下面的步骤。 请不要做如下操作 请不要在服务器自己安装Java环境和tomcat!!!!!!,这将直接导致API安装后无法运行,并且造成后续的一系列问题,相当于五分钟的事情你非要画蛇添足变成一两个小时搞不定!!!! 第二步:执行安装脚本 首先,执行如下命令,进入服务器opt目录 cd /opt对于Centos 执行下方RuleApi安装脚本,根据提示完成安装。 wget https://www.ruletree.club/api/ruleapi.sh && sh ruleapi.sh install如果上述脚本执行出现网络错误,可选择备用节点 对于Ubuntu(测试状态) 执行下方RuleApi安装脚本,根据提示完成安装。 curl -O https://www.ruletree.club/api/ubuntu/ruleapi.sh && chmod +x ruleapi.sh && ./ruleapi.sh install对于Debian(测试状态) 执行下方RuleApi安装脚本,根据提示完成安装。 curl -O https://www.ruletree.club/api/debian/ruleapi.sh && chmod +x ruleapi.sh && ./ruleapi.sh install命令和填写范例如下: 请输入运行端口(输入8080或者其它端口,千万别80或者443):这里可以不填,或者填写不合其它应用冲突的端口 请输入数据库名:如果安装了Typecho,就填写和Typecho一致的数据库信息 请输入数据库用户名:如果安装了Typecho,就填写和Typecho一致的数据库信息 请输入数据库密码:如果安装了Typecho,就填写和Typecho一致的数据库信息 请输入redis密码(一般是空): 请输入系统管理密码(建议英文加数字):系统管理里面也叫做访问Key 第四步:外网访问 安装完成RuleApi后,需要外网访问才可以使用。所以,如果安装了宝塔面板,请新创建一个纯静态网站(不需要ftp,不需要数据库,只要纯静态并且分配单独的域名,一般是二级域名),配置SSL证书(主要提升安全性和后续方便),随后将如下代码放入这个新建网站的伪静态配置中。下方的代码实现了反向代理和跨域,同时8080请替换为你上个步骤设置的API端口,127.0.0.1这条请不要变更。 location ^~ / { add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Data-Type,X-Requested-With,X-Data-Type,X-Auth-Token'; if ( $request_method = 'OPTIONS' ) { return 200; } proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; }访问界面如下,随后请点击“安装及更新”按钮,输入你上个步骤设置的系统管理密钥,即可完成安装。如果你未安装Typecho,将会弹出提示框询问你是否需要独立安装。 screenshot-20230102-204919.png图片 到此,RuleApi安装完成,你使用的域名即为API接口地址。 第五步:API后续管理 注意,项目启动之后,运行日志将输出到/opt目录下out.txt文件,如果启动后出现异常或者无法访问,可以打开这个文件查看具体的原因。/opt/application.properties为主要的配置文件,如果出现安装脚本配置错误,项目无法正常启动,就可以在这个文件进行修改。 管理命令 启动RuleAPi sh /opt/ruleapi.sh start停止RuleAPi sh /opt/ruleapi.sh stop重启RuleAPi sh /opt/ruleapi.sh restart删除RuleAPi sh /opt/ruleapi.sh uninstall查看帮助信息 sh /opt/ruleapi.sh help 更新和升级 通过如下指令可更新到最新正式版 sh /opt/ruleapi.sh update通过如下指令可更新到内测版本(功能多,但可能存在未知问题) sh /opt/ruleapi.sh updateBeta开机自启和宕机自启 目前脚本已经添加了monitor监听方法,执行后将检测RuleAPI是否正常运行,如果未运行状态则执行启动命令。具体指令如下: sh /opt/ruleapi.sh monitor所以,只需要让这个命令几分钟执行一次,监听项目是否运行正常,未运行就开始运行,就可以实现开机自启和宕机自启,以宝塔面板为例,直接在计划任务中增加如下的任务即可,间隔可以3分钟到10分钟,这样开启或者宕机后几分钟内就会自行启动。 定时任务 1669351442.png图片 监控运行状态 1669351476.png图片 如何更新脚本本身? 这个一键脚本我是会一直维护更新的,如果你本地的版本已经落后或者存在问题,可以通过下方的链接下载最新的sh文件,然后上传到服务器的opt目录,这样就可以保持脚本版本的最新 旧版提示 直接安装最新版本的可无视下方内容,而通过旧版升级的请根据下方的提示进行修改。 1.对于2022/03/03之前安装RuleApi的用户`,如果使用的是本地上传接口,请将/opt/file:/opt/RuleApi.jar!/BOOT-INF/classes!下的static文件,移动到/opt/file/static中,如果没有就自己创建。2022/03/03之后安装的用户请无视。 2.对于从RuleApi1.3.0以下版本升级的用户,请修改opt目录下application.properties文件,找到如下代码: logging.level.com.RuleApi.dao=DEBUG改为 logging.level.com.RuleApi.dao=INFO
网站搭建与运维
# 网站搭建
红帝
1年前
0
5
0
上一页
1
...
4
5
6
...
42
下一页
易航博客