<?xml version="1.0" encoding="utf-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>开心编程</title><link>http://woaioa.com/</link><description>Good Luck To You!</description><item><title>解决Win2008 R2自动关机问题</title><link>http://woaioa.com/?id=28</link><description>&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;清除wlms.exe进程方法&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;通过使用&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;PsTools&lt;/strong&gt;工具进入SYSTEM用户执行regedit.exe，然后修改WLSMS服务项，将启动类型由02（自动）改为04（禁用），并修改加载的EXE位置，这样Windows Server 2008 R2启动就不会加载许可证监控服务了。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;相关工具：&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;PsTools&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;下载地址：&lt;a href=&quot;http://pstools.en.softonic.com/download&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; style=&quot;box-sizing: border-box; background: transparent; color: rgb(66, 139, 202);&quot;&gt;http://pstools.en.softonic.com/download&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;下载后将&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;psexec.exe&lt;/strong&gt;进程拷贝倒&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;system32&lt;/strong&gt;文件夹下，然后通过运行命令执行&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;命令格式：&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;psexec.exe -d -i -s regedit.exe&lt;/strong&gt;&amp;nbsp;后，打开注册表进入特权模式，将注册表项：&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; overflow-wrap: break-word; margin-top: 0px; margin-bottom: 20px; color: rgb(68, 68, 68); font-family: &amp;quot;Microsoft Yahei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;strong style=&quot;box-sizing: border-box;&quot;&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WLMS]&lt;/strong&gt;的start参数的值改成4即可，然后重启服务器，查看任务管理器是否还存在wlms.exe进程，如果存在则证明没有修改成功。&lt;/p&gt;</description><pubDate>Wed, 18 Jan 2023 09:19:47 +0800</pubDate></item><item><title>redis安装 windows IIS 安装 tp5配置引入</title><link>http://woaioa.com/?id=27</link><description>&lt;h2 style=&quot;white-space: normal; box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 22px; color: rgb(79, 79, 79); line-height: 30px; overflow-wrap: break-word; font-variant-ligatures: no-common-ligatures; background-color: rgb(255, 255, 255);&quot;&gt;1. 下载&lt;/h2&gt;&lt;p&gt;&lt;a href=&quot;https://windows.php.net/downloads/pecl/releases/redis/&quot; _src=&quot;https://windows.php.net/downloads/pecl/releases/redis/&quot;&gt;https://windows.php.net/downloads/pecl/releases/redis/&lt;/a&gt;（官方解压版）&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;&lt;a href=&quot;https://windows.php.net/downloads/pecl/releases/igbinary/&quot; _src=&quot;https://windows.php.net/downloads/pecl/releases/igbinary/&quot;&gt;https://windows.php.net/downloads/pecl/releases/igbinary/（官方解压版）&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;下载地址：&lt;/span&gt;&lt;a href=&quot;https://github.com/tporadowski/redis/releases%E3%80%82&quot; style=&quot;box-sizing: border-box; outline: 0px; margin: 0px; padding: 0px; text-decoration-line: none; cursor: pointer; background-color: rgb(255, 255, 255); color: rgb(103, 149, 181); overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; white-space: normal;&quot;&gt;https://github.com/tporadowski/redis/releases&lt;/a&gt;（安装包版）&lt;/p&gt;&lt;p&gt;Redis-x64-5.0.10.msi： 在windows下的安装文件，方便简单，直接会将Redis写入windows服务。&lt;/p&gt;&lt;p&gt;Redis-x64-5.0.10.zip： 需要解压安装的，接下来讨论的是这种。&lt;/p&gt;&lt;p&gt;Source code (zip)： 源码的zip压缩版&lt;/p&gt;&lt;p&gt;Source code (tar.gz)： 源码的tar.gz压缩版&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184313768802.png&quot; title=&quot;20201212120907534.png&quot; alt=&quot;20201212120907534.png&quot;/&gt;&lt;/p&gt;&lt;h2 style=&quot;box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 22px; color: rgb(79, 79, 79); line-height: 30px; overflow-wrap: break-word; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;2. 解压&lt;/h2&gt;&lt;ol style=&quot;box-sizing: border-box; outline: 0px; margin-bottom: 24px; padding: 0px; list-style-position: initial; list-style-image: initial; font-size: 16px; overflow: auto hidden; overflow-wrap: break-word; color: rgba(0, 0, 0, 0.75); font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; color: rgb(77, 77, 77); line-height: 26px; overflow: auto hidden; overflow-wrap: break-word;&quot;&gt;Redis 支持 32 和 64 位。需要根据你系统的实际情况进行选择，这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘，解压后，将文件夹重新命名为 redis。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; color: rgb(77, 77, 77); line-height: 26px; overflow: auto hidden; overflow-wrap: break-word;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184374135384.png&quot; title=&quot;002.png&quot; alt=&quot;002.png&quot;/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; color: rgb(77, 77, 77); line-height: 26px; overflow: auto hidden; overflow-wrap: break-word;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;打开一个 cmd 窗口，使用 cd 命令切换目录到 C:\redis 运行：&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; color: rgb(77, 77, 77); line-height: 26px; overflow: auto hidden; overflow-wrap: break-word;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184436188284.png&quot; title=&quot;003.png&quot; alt=&quot;003.png&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;如果想方便的话，可以把 redis 的路径加到系统的环境变量里，这样就省得再输路径了，后面的那个 redis.windows.conf 可以省略，如果省略，会启用默认的。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;另启一个 cmd 窗口，原来的不要关闭，不然就无法访问服务端了。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;切换到 redis 目录下运行：redis-cli.exe -h 127.0.0.1 -p 6379&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;设置键值对：set myKey test&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;取出键值对：get myKey&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184467161913.png&quot; title=&quot;004.png&quot; alt=&quot;004.png&quot;/&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h2 style=&quot;box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 22px; color: rgb(79, 79, 79); line-height: 30px; overflow-wrap: break-word; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;3. 部署&lt;/h2&gt;&lt;p&gt;由于上面虽然启动了redis服务，但是，只要一关闭cmd窗口，redis服务就关闭了。所以，把redis设置为一个windows服务。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;打开一个 cmd 窗口，切换到 redis 目录下，安装命令：redis-server.exe --service-install redis.windows.conf --loglevel verbose 使用命令（一定要把临时服务关闭，否则安装不上），最后的参数 --loglevel verbose表示记录日志等级。安装成功，如图所以：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184536530579.png&quot; title=&quot;005.png&quot; alt=&quot;005.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;安装完成后，windows服务列表里面就有redis了。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184547207781.png&quot; title=&quot;006.png&quot; alt=&quot;006.png&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 22px; color: rgb(79, 79, 79); line-height: 30px; overflow-wrap: break-word; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;4. 安装php的redis扩展&lt;/h2&gt;&lt;ol style=&quot;box-sizing: border-box; outline: 0px; margin-bottom: 24px; padding: 0px; list-style-position: initial; list-style-image: initial; font-size: 16px; overflow: auto hidden; overflow-wrap: break-word; color: rgba(0, 0, 0, 0.75); font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;配置php.ini ：打开php.ini ，大约在900多行的位置加上两行配置（前后顺序不能颠倒，否则无效）&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;extension=php_igbinary.dll
extension=php_redis.dll&lt;/pre&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184729738787.png&quot; title=&quot;007.png&quot; alt=&quot;007.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;**注意：**这里一定要在 phpinfo(); 查看 vc库 是vc9,vc14,vc15 … … / x86还是x64 / 和php版本。然后在上面的地址中下载对应的 redis 版本.（下图）&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184781191030.png&quot; title=&quot;008.png&quot; alt=&quot;008.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;查看 vc库 是vc9,vc14,vc15 … … / x86还是x64 / 和php版本，下载对应的版本。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184794804782.png&quot; title=&quot;009.png&quot; alt=&quot;009.png&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;在 PHPinfo（）中就可以查看 redis 了&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2022/08/202208111660184906776667.png&quot; title=&quot;010.png&quot; alt=&quot;010.png&quot;/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 22px; color: rgb(79, 79, 79); line-height: 30px; overflow-wrap: break-word; font-variant-ligatures: no-common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;5. tp5配置引入使用redis&lt;/h2&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;在tp里找到config.php配置文件，找到cache，改成下面的样子&lt;/span&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;cache&amp;#39;&amp;nbsp;=&amp;gt;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;选择模式
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;type&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;complex&amp;#39;,

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;默认(文件缓存)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;default&amp;#39;=&amp;gt;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;文件缓存
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;type&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;File&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;缓存保存目录
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;path&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;nbsp;CACHE_PATH,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;缓存前缀
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;prefix&amp;#39;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;缓存有效期&amp;nbsp;0表示永久缓存
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;expire&amp;#39;&amp;nbsp;=&amp;gt;&amp;nbsp;0,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Redis缓存(调用时需要加上store(&amp;#39;redis&amp;#39;)-&amp;gt;)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;redis&amp;#39;=&amp;gt;[
			//&amp;nbsp;Redis缓存
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;type&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;#39;Redis&amp;#39;,
			//&amp;nbsp;服务器地址
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;host&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;127.0.0.1&amp;#39;,
			//&amp;nbsp;服务端口
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;port&amp;#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;6379&amp;#39;,
			//&amp;nbsp;服务密码
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;password&amp;#39;&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;#39;&amp;#39;,
			//&amp;nbsp;缓存有效期&amp;nbsp;0表示永久缓存
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;timeout&amp;#39;=&amp;gt;&amp;nbsp;0
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],&lt;/pre&gt;&lt;p&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: no-common-ligatures; background-color: #FFFFFF;&quot;&gt;控制器里写上以下代码测试一下&lt;/span&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;//赋值
Cache::store(&amp;#39;redis&amp;#39;)-&amp;gt;set(&amp;#39;cache&amp;#39;,&amp;nbsp;$cache,&amp;nbsp;25200);
//取值
Cache::store(&amp;#39;redis&amp;#39;)-&amp;gt;get(&amp;#39;cache&amp;#39;);&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Thu, 11 Aug 2022 10:16:10 +0800</pubDate></item><item><title>自动执行任务无限跳转翻页方法</title><link>http://woaioa.com/?id=26</link><description>&lt;p&gt;在使用自动执行任务时，由于数据过大，所以讲任务分隔成若干页来执行，执行完成后就用Header跳转到下一页，操作时发现执行几十页后，网页就出现“重定向次数过多”终止运行了。&lt;br/&gt;通过百度知道，各浏览器版本的执行次数不一样。所以用浏览器操作的时候，每个不同的浏览器执行的页数也不同。&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; color: rgb(33, 37, 41); font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;通过&amp;nbsp;curl.exe访问的默认上限时 50次所以&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;翻页&lt;/span&gt;只能执行到50页之后就不在执行了。经过google搜索，知道&amp;nbsp; --max-redirs &amp;lt;num&amp;gt; 命令可以设置 重定向次数上限。设置方法如下：&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; color: rgb(33, 37, 41); font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;--max-redirs&amp;nbsp; =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&amp;lt;上&lt;span style=&quot;color: #212529; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;限&lt;/span&gt;值&amp;gt;&lt;/span&gt;&amp;nbsp; &amp;nbsp;-1 则无上限&lt;/span&gt;&lt;/p&gt;&lt;pre class=&quot; language-default&quot; style=&quot;font-family: Consolas, Monaco, &amp;quot;Andale Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, monospace; overflow: auto; width: auto; overflow-wrap: normal; color: rgb(248, 248, 242); background-color: rgb(39, 40, 34); text-shadow: rgba(0, 0, 0, 0.3) 0px 1px; word-break: break-all; line-height: 1.5; tab-size: 4; hyphens: none; padding: 1em; border-radius: 0.3em;&quot;&gt;-L&amp;nbsp;-s&amp;nbsp;--max-redirs&amp;nbsp;-1&amp;nbsp;http://192.168.0.252/xxx.php?p=1&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; color: rgb(33, 37, 41); font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; color: rgb(33, 37, 41); font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;各主要浏览器限制次数表&lt;/p&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;100%&quot;&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;&lt;tr style=&quot;box-sizing: border-box;&quot; class=&quot;firstRow&quot;&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;222&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;浏览器版本&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;191&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;限制次数&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;1009&quot;&gt;备注&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;box-sizing: border-box;&quot;&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;222&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;chrome&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;191&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;1009&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;这个是测试数据&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;box-sizing: border-box;&quot;&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;222&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;firefox&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;191&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;1009&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;box-sizing: border-box;&quot;&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;222&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;ie7 8&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;191&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;10&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;1009&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;box-sizing: border-box;&quot;&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;222&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;ie9&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px;&quot; width=&quot;191&quot;&gt;&lt;div style=&quot;box-sizing: border-box;&quot;&gt;110&lt;/div&gt;&lt;/td&gt;&lt;td valign=&quot;top&quot; style=&quot;box-sizing: border-box; border-color: rgb(31, 73, 125); border-collapse: collapse; padding: 8px 14px; min-width: 50px; word-break: break-all;&quot; width=&quot;1009&quot;&gt;&lt;p style=&quot;box-sizing: border-box;&quot;&gt;从IE9即增加这个值乘以一个系数(11)。因为&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box;&quot;&gt;MaxHttpRedirects的默认值是10,重定向限制自IE9将10 * 11 = 110&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 19 Nov 2021 16:50:58 +0800</pubDate></item><item><title>Trojan多用户面板+宝塔</title><link>http://woaioa.com/?id=25</link><description>&lt;h3 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px 0px; font-size: 1.5em; white-space: normal;&quot;&gt;Trojan多用户面板+宝塔面板+wordpress&lt;/h3&gt;&lt;blockquote style=&quot;box-sizing: border-box; padding: 20px 45px; margin: 1.6em -31px; border-left: 5px solid rgb(57, 156, 156); border-top-color: rgb(222, 229, 231); border-right-color: rgb(222, 229, 231); border-bottom-color: rgb(222, 229, 231); line-height: 1.5em; background: rgb(243, 245, 247); color: rgb(85, 85, 85); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot;&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; word-break: break-all !important;&quot;&gt;本教程参考了bozai相关的教程以及&lt;a href=&quot;https://github.com/Jrohy/trojan&quot; target=&quot;_blank&quot; style=&quot;box-sizing: border-box; background-color: transparent; color: rgb(88, 102, 110); text-decoration-line: none; cursor: pointer; border-bottom: 1px solid rgb(153, 153, 153); overflow-wrap: break-word; word-break: break-all;&quot;&gt;jrohy&lt;/a&gt;的项目，实现了Trojan面板和宝塔、wordpress共存。实现原理主要就是利用nginx的分流，由nginx接管443端口，通过匹配不同的域名将流量由443转发到相关的服务端口去，从而实现443端口的复用，达到多服务共存的效果。可是实现如trojan.wayne.com访问trojan服务，blog.wayne.com访问，IP:port访问面板。&lt;/p&gt;&lt;/blockquote&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;0. 准备工作&lt;/h4&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;需要一台VPS建议采用Centos7x系统可以极速安装LNMP环境，其他系统需要编译安装等待时间太长。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;准备好2个域名，并将2个域名解析到该VPS上。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;使用脚本安装好加速，推荐bbr&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre class=&quot;prism-highlight prism-language-c&quot;&gt;&amp;nbsp;yum&amp;nbsp;install&amp;nbsp;-y&amp;nbsp;wget&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;wget&amp;nbsp;-N&amp;nbsp;--no-check-certificate&amp;nbsp;https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh
&amp;nbsp;&amp;nbsp;&amp;nbsp;chmod&amp;nbsp;+x&amp;nbsp;tcp.sh
&amp;nbsp;&amp;nbsp;&amp;nbsp;./tcp.sh&lt;/pre&gt;&lt;ol class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: decimal;&quot;&gt;&lt;li&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;安装宝塔面板&lt;/h4&gt;&lt;/li&gt;&lt;/ol&gt;&lt;pre class=&quot;prism-highlight prism-language-c&quot;&gt;yum&amp;nbsp;install&amp;nbsp;-y&amp;nbsp;wget&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;wget&amp;nbsp;-O&amp;nbsp;install.sh&amp;nbsp;http://download.bt.cn/install/install_6.0.sh&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;sh&amp;nbsp;install.sh&lt;/pre&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;2. 安装LNMP环境&lt;/h4&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;在安装好宝塔后，打开宝塔面板的页面会弹出相应的的界面，安装好Nginx，MySqL，PHP就够了，没有弹出的话就去软件商店里面找。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;3. 宝塔一键部署Wordpress&lt;/h4&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;在宝塔的应用商店找到，一键部署,然后点击WordPress，在域名的地方填入准备好的2个域名，并同时选择数据库以及php版本。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315388747175.png&quot; title=&quot;001.png&quot; alt=&quot;001.png&quot;/&gt;&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;4. 设置网站及数据库&lt;/h4&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;部署后，打开blog.wayne.com地址设置好相应的数据库。数据库名称和密码可以在宝塔的数据库界面找到。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;5. 在线申请证书&lt;/h4&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;打开宝塔面板网站栏，在网站设置打开SSL中勾选2个绑定的域名，并为其申请Let&amp;#39;s Encryupt证书。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315399194288.png&quot; title=&quot;002.png&quot; alt=&quot;002.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;然后关闭SSL,然后打开/www/server/panel/vhost/cert/blog.wayne.com/路径查看是否有2个的pem文件。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;6. 安装Trojan及面板&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-c&quot;&gt;#安装/更新
source&amp;nbsp;&amp;lt;(curl&amp;nbsp;-sL&amp;nbsp;https://git.io/trojan-install)

#卸载
source&amp;nbsp;&amp;lt;(curl&amp;nbsp;-sL&amp;nbsp;https://git.io/trojan-install)&amp;nbsp;--remove&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;安装是采用手动填写证书路径如：&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-markup&quot;&gt;/www/server/panel/vhost/cert/blog.wayne.com/fullchain.pem
/www/server/panel/vhost/cert/blog.wayne.com/privkey.pem&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;数据库设置选择自定义：&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;库名可以回车或自定义&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;用户名：root&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;密码：到宝塔面板对应的数据库栏找到相应的密码并填入。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;如果不小心填错了，可以先停止trojan-web服务，卸载面板重新安装&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-c&quot;&gt;systemctl&amp;nbsp;stop&amp;nbsp;trojan-web&amp;nbsp;#&amp;nbsp;停止面板source&amp;nbsp;&amp;lt;(curl&amp;nbsp;-sL&amp;nbsp;https://git.io/trojan-install)&amp;nbsp;--remove&amp;nbsp;#&amp;nbsp;卸载面板&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;安装好Trojan后最好测试一下是否能够正常访问。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;7. 修改Trojan及面板端口&lt;/h4&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;修改Trojan面板端口&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;systemctl&amp;nbsp;status&amp;nbsp;trojan-web&amp;nbsp;#&amp;nbsp;查看service&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315414152567.png&quot; title=&quot;003.png&quot; alt=&quot;003.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;进入到service文件中修改端口&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315423126124.png&quot; title=&quot;004.png&quot; alt=&quot;004.png&quot;/&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;systemctl&amp;nbsp;restart&amp;nbsp;trojan-web&amp;nbsp;重启trojan面板&lt;/pre&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;修改Trojan服务端口&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;systemctl&amp;nbsp;status&amp;nbsp;trojan&amp;nbsp;#&amp;nbsp;查看配置文件&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315434773849.png&quot; title=&quot;005.png&quot; alt=&quot;005.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;打开配置文件并修改为：&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315455129079.png&quot; title=&quot;975435569.png&quot; alt=&quot;975435569.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;端口修改完成这一步终结。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;8. 配置Nginx分流&lt;/h4&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;在宝塔面板中找到Nginx，并在Nginx的配置修改的http模块前面加入一下代码：（&lt;span style=&quot;color: #58666E; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif;&quot;&gt;访问域名通过&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #58666E; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif;&quot;&gt;Nginx 判断域名是否是 trojan域名 如何是则直接转到trojan服务端口 否则跳转到4433端口&lt;/span&gt;）&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;stream&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;这里就是&amp;nbsp;SNI&amp;nbsp;识别，将域名映射成一个配置名
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;map&amp;nbsp;$ssl_preread_server_name&amp;nbsp;$backend_name&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;blog.xxxxx.com&amp;nbsp;web;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trojan.xxxxx.com&amp;nbsp;trojan;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;域名都不匹配情况下的默认值
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;default&amp;nbsp;web;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;web，配置转发详情
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;upstream&amp;nbsp;web&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;server&amp;nbsp;127.0.0.1:4433;（此端口是因为已经监听了443端口，下面的网站不能在设置443端口了。所有这里定义了一个4433端口，所有WEB访问都进入4433端口）
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;trojan，配置转发详情
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;upstream&amp;nbsp;trojan&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;server&amp;nbsp;127.0.0.1:10110;（此端口是trojan设置的服务端口，在trajan&amp;nbsp;config.json中配置&amp;nbsp;local_port=（本地服务端口））
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;监听&amp;nbsp;443&amp;nbsp;并开启&amp;nbsp;ssl_preread
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;server&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listen&amp;nbsp;443&amp;nbsp;reuseport;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listen&amp;nbsp;[::]:443&amp;nbsp;reuseport;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;proxy_pass&amp;nbsp;&amp;nbsp;$backend_name;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ssl_preread&amp;nbsp;on;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
}&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;保存配置并重启nginx服务&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;9. 修改网站配置&lt;/h4&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;打开宝塔面板的网站配置，开启部署SSL证书。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;修改配置文件中的端口443为4433如图：（这里是继承父级&lt;span style=&quot;color: #58666E; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif;&quot;&gt;nginx访问443转向过来的4433端口，要ssl 如下 listen 4433 ssl http2&lt;/span&gt;）&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2021/08/202108301630315466190919.png&quot; title=&quot;006.png&quot; alt=&quot;006.png&quot;/&gt;&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;在文件末尾增加代码&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;&amp;nbsp;&amp;nbsp;server
&amp;nbsp;&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;listen&amp;nbsp;10111;&amp;nbsp;修改前&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listen&amp;nbsp;80;&amp;nbsp;#修改后，可以续签。
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;server_name&amp;nbsp;trojan.xxxx.com;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;location&amp;nbsp;/&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;($http_host&amp;nbsp;!~&amp;nbsp;&amp;quot;^blog.xxxxx.com$&amp;quot;)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rewrite&amp;nbsp;&amp;nbsp;^(.*)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;https://blog.xxxx.com$1&amp;nbsp;permanent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;proxy_redirect&amp;nbsp;off;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;proxy_set_header&amp;nbsp;Host&amp;nbsp;$host;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;proxy_set_header&amp;nbsp;X-Real-IP&amp;nbsp;$remote_addr;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;proxy_set_header&amp;nbsp;X-Forwarded-For&amp;nbsp;$proxy_add_x_forwarded_for;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;access_log&amp;nbsp;logs/aaa.com_access.log;
&amp;nbsp;&amp;nbsp;}&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; margin-top: 1.5em; margin-bottom: 1.5em; color: rgb(88, 102, 110); font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; white-space: normal; word-break: break-all !important;&quot;&gt;以上代码中的网址请根据自己的需求进行更改，保存设置之后，找到Nginx并重启服务。&lt;/p&gt;&lt;h4 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px; font-size: 18px; white-space: normal;&quot;&gt;10. 最后重启trojan服务&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;&amp;nbsp;&amp;nbsp;systemctl&amp;nbsp;restart&amp;nbsp;trojan&amp;nbsp;#重启服务
&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;systemctl&amp;nbsp;status&amp;nbsp;trojan&amp;nbsp;#查看状态&lt;/pre&gt;&lt;h3 style=&quot;box-sizing: border-box; font-family: &amp;quot;Source Sans Pro&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft Yahei&amp;quot;, SimSun, Helvetica, Arial, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(64, 64, 64); margin: 1.5em 0px 0px; font-size: 1.5em; white-space: normal;&quot;&gt;终于大功告成了。&lt;/h3&gt;&lt;h2 style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 24px; line-height: 1.25; border-bottom: 1px solid var(--color-border-secondary); padding-bottom: 0.3em; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;命令行&lt;/h2&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;Usage:
&amp;nbsp;&amp;nbsp;trojan&amp;nbsp;[flags]
&amp;nbsp;&amp;nbsp;trojan&amp;nbsp;[command]

Available&amp;nbsp;Commands:
&amp;nbsp;&amp;nbsp;add&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;添加用户
&amp;nbsp;&amp;nbsp;clean&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;清空指定用户流量
&amp;nbsp;&amp;nbsp;completion&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;自动命令补全(支持bash和zsh)
&amp;nbsp;&amp;nbsp;del&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;删除用户
&amp;nbsp;&amp;nbsp;help&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Help&amp;nbsp;about&amp;nbsp;any&amp;nbsp;command
&amp;nbsp;&amp;nbsp;info&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;用户信息列表
&amp;nbsp;&amp;nbsp;log&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;查看trojan日志
&amp;nbsp;&amp;nbsp;restart&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;重启trojan
&amp;nbsp;&amp;nbsp;start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;启动trojan
&amp;nbsp;&amp;nbsp;status&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;查看trojan状态
&amp;nbsp;&amp;nbsp;stop&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;停止trojan
&amp;nbsp;&amp;nbsp;tls&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;证书安装
&amp;nbsp;&amp;nbsp;update&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;更新trojan
&amp;nbsp;&amp;nbsp;updateWeb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;更新trojan管理程序
&amp;nbsp;&amp;nbsp;version&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;显示版本号
&amp;nbsp;&amp;nbsp;import&amp;nbsp;[path]&amp;nbsp;导入sql文件
&amp;nbsp;&amp;nbsp;export&amp;nbsp;[path]&amp;nbsp;导出sql文件
&amp;nbsp;&amp;nbsp;web&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;以web方式启动

Flags:
&amp;nbsp;&amp;nbsp;-h,&amp;nbsp;--help&amp;nbsp;&amp;nbsp;&amp;nbsp;help&amp;nbsp;for&amp;nbsp;trojan&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h1 style=&quot;box-sizing: border-box; margin-right: 0px; margin-bottom: 16px; margin-left: 0px; line-height: 1.25; border-bottom: 1px solid var(--color-border-secondary); padding-bottom: 0.3em; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; white-space: normal; background-color: rgb(255, 255, 255); margin-top: 0px !important;&quot;&gt;一键安装 Trojan-Panel 多用户版 带加速器&lt;/h1&gt;&lt;h1 style=&quot;box-sizing: border-box; margin: 24px 0px 16px; line-height: 1.25; border-bottom: 1px solid var(--color-border-secondary); padding-bottom: 0.3em; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;脚本介绍&lt;/h1&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;下面这些功能是 Jrohy大神 Trojan多用户管理部署程序的基本功能&lt;/p&gt;&lt;ul style=&quot;box-sizing: border-box; margin-bottom: 16px; padding-left: 2em; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;在线web页面和命令行两种方式管理trojan多用户&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;启动 / 停止 / 重启 trojan 服务端&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;支持流量统计和流量限制&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;命令行模式管理, 支持命令补全&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;集成acme.sh证书申请&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;生成客户端配置文件&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;支持trojan://分享链接和二维码分享(二维码仅限web页面)&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h1 style=&quot;box-sizing: border-box; margin: 24px 0px 16px; line-height: 1.25; border-bottom: 1px solid var(--color-border-secondary); padding-bottom: 0.3em; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;a id=&quot;user-content-脚本代码&quot; class=&quot;anchor&quot; aria-hidden=&quot;true&quot; href=&quot;https://github.com/V2RaySSR/Trojan_panel_web#脚本代码&quot; style=&quot;box-sizing: border-box; background-color: transparent; text-decoration-line: none; float: left; line-height: 1; margin-left: -20px; padding-right: 4px;&quot;&gt;&lt;svg class=&quot;octicon octicon-link&quot; viewbox=&quot;0 0 16 16&quot; version=&quot;1.1&quot; width=&quot;16&quot; height=&quot;16&quot; aria-hidden=&quot;true&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;脚本代码&lt;/h1&gt;&lt;p style=&quot;box-sizing: border-box; margin-bottom: 16px; margin-top: 0px; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI Variable&amp;quot;, &amp;quot;Segoe UI&amp;quot;, system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;一键更改 Trojan-Panel 面板端口并设置伪装站点&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-actionscript&quot;&gt;wget&amp;nbsp;-N&amp;nbsp;--no-check-certificate&amp;nbsp;&amp;quot;https://raw.githubusercontent.com/V2RaySSR/Trojan_panel_web/master/trojan-web-panel.sh&amp;quot;&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;chmod&amp;nbsp;+x&amp;nbsp;trojan-web-panel.sh&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;./trojan-web-panel.sh&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Mon, 30 Aug 2021 17:09:01 +0800</pubDate></item><item><title>Git提示“warning: LF will be replaced by CRLF”最详细解释+解决方案</title><link>http://woaioa.com/?id=24</link><description>&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;1.问题描述：windows平台下使用git add，git deploy 文件时经常出现“warning: LF will be replaced by CRLF” 的提示&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;has&quot; height=&quot;192&quot; src=&quot;https://img-blog.csdnimg.cn/20190323151223512.png&quot; width=&quot;564&quot; style=&quot;box-sizing: border-box; outline: none; border: 0px; max-width: 100%; height: auto; overflow-wrap: break-word; cursor: zoom-in;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;2.注解：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(1)换行符‘\n’和回车符‘\r’&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;在计算机还没有出现之前，有一种叫做电传打字机（Teletype&amp;nbsp;Model&amp;nbsp;33）的玩意，每秒钟可以打10个字符。但是它有一个问题，就是打完一行换行的时候，要用去0.2秒，正好可以打两个字符。要是在这0.2秒里面，又有新的字符传过来，那么这个字符将丢失。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;于是，研制人员想了个办法解决这个问题，就是在每行后面加两个表示结束的字符。一个叫做“回车”，告诉打字机把打印头定位在左边界；另一个叫做“换行”，告诉打字机把纸向下移一行。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(A)回车符就是回到一行的开头，用符号r表示，十进制ASCII代码是13，十六进制代码为0x0D，回车（return）；&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(B)换行符就是另起一行，用n符号表示，ASCII代码是10，十六制为0x0A， 换行（newline）。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(2)LF和CRLF区别&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;LF: Line Feed换行&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;feed v.喂养,供给;将(信息)输入&amp;nbsp; &amp;nbsp; &amp;nbsp;line feed直译是”将行输入”,再意译”换行”&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;CRLF: Carriage Return Line Feed 回车换行&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;Carriage n.马车,火车车厢;运输费用&amp;nbsp; &amp;nbsp; 在carriage return中,carriage译为“车”,return译为“回”&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;在过去的机械打字机上有个部件叫「字车」（Typewriter carriage），每打一个字符，字车前进一格，打完一行后，我们需要让字车回到起始位置，而“Carriage Return”键最早就是这个作用，因此被直接翻译为「回车」。尽管后来回车键的作用已经不止” 倒回字车”那么简单，但这个译名一直被保留下来。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;3.分析问题&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;这句警告出现的原因：我们在Windows平台下git add任意Windows平台编辑过的代码文本的换行默认都是CRLF，所以一般git add不会出错。但是如果如下的(i)或者(ii)发生了，那我们再进行git add这个LF换行的文件时，会出现这个警告&amp;quot; LF will be replaced by CRLF in …&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;(i)我们的团队成员是Linux/Mac平台并参与了项目的git提交&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;(ii)我们Windows平台的某些软件会生成换行是LF的代码文本(如李俊德git add的是Webstorm生成的HTML项目中隐藏文件夹.idea中的workspace.xml,这个xml文件换行是LF)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(1)不同操作系统下，处理行尾结束符的方法是不同的：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(A)Windows和Dos下：使用回车（CR）和换行（LF）两个字符来结束一行，回车+换行(CR+LF)，即“\r\n”；&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(B)Unix和mac下：只使用换行（LF）一个字符来结束一行，即“\n”；&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(最早Mac每行结尾是回车CR 即&amp;#39;\r&amp;#39;，后mac os x 也投奔了 unix)&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(2)Git下处理“换行”（line ending）&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;core.autocrlf是git中负责处理line ending的变量，可以设置3个值：true，false，input。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(A)设置为true【config --global core.autocrlf true】&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;当设置成true时，这意味着你在任何时候添加(add)文件到git仓库时，git都会视为它是一个文本文件(text file)。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;它将把crlf变成LF。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(B)设置为false【config --global core.autocrlf false】&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;当设置成false时，line endings将不做转换操作。文本文件保持原来的样子。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(C)设置为input时，添加文件git仓库时，git把crlf编程lf。当有人Check代码时还是lf方式。因此在window操作系统下，不要使用这个设置。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;4.此问题的负面影响&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;格式化与多余的空白字符，特别是在跨平台情况下，有时候是一个令人发指的问题。由于编辑器的不同或者文件行尾的换行符在 Windows 下被替换了，一些细微的空格变化会不经意地混入提交，造成麻烦。虽然这是小问题，但会极大地扰乱跨平台协作。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;假如你正在Windows上写程序;又或者你正在和其他人合作，他们在Windows上编程，而你却在其他系统上，在这些情况下，你可能会遇到行尾结束符问题。此问题的全部负面影响如下：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(1)一个直接后果是，Unix/Mac系统下的一个“多行文本”文件在Windows里打开的话，“多行文本”会变成“一行”。（原因：Unix/Mac换行只用了换行符‘\n’，而Windows的换行要求是回车换行符’\r\n’，因此Unix/Mac中的“多行文本”的换行不符合Windows的规则，所以Windows对这些不符合换行规则的“多行文本”全部按照“没有换行”处理，所以导致“多行文本”会变成“一行”）&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(2)而Windows里的文件在Unix/Mac下打开的话，在每行的结尾可能会多出一个^M符号。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(3)Linux保存的文件在windows上用记事本看的话会出现黑点。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;5.解决此问题的方案&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(1)如果我们目前是Window平台并出现该警告，啥也别做就行，虽然这个警告难看，但这个警告能保证我们项目团队正常跨系统git操作代码&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;因为git的Windows 客户端基本都会默认设置 core.autocrlf=true（我们可通过&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;git config core.autocrlf&lt;/span&gt;命令查询我们的Windows上该属性是否默认true。如不是true,通过&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;config --global core.autocrlf true&lt;/span&gt;命令设置该属性为true），而“core.autocrlf=true”有以下3个功能来避免我们出错：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(A)在“把&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;modified修改过的文件&lt;/span&gt;git add到&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;暂存区stage&lt;/span&gt;”时，Git自动把LF转换成CRLF,并给出那条警告”LF will be replaced by CRLF”&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(B)在“把&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;modified修改过的文件&lt;/span&gt;由&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;暂存区(stage)&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;提交(commit)&lt;/span&gt;到&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;版本库/仓库(repository)&lt;/span&gt;”时，Git自动把CRLF转换成LF&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(C)在“用&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;检出/git checkout切换到指定分支&lt;/span&gt;&amp;nbsp;或&amp;nbsp;&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;git clone克隆远程版本库&lt;/span&gt;”来加载代码时，Git自动把LF转换成CRLF&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;提到的那句警告：“IF will be replaced by CRLF in &amp;lt;file-name&amp;gt;”&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;这句警告的下面其实还有一句很重要的话：The file will have its original line endings in your working directory.&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(翻译：&amp;quot;在工作区里，这个文件会保留它原本的换行符&amp;quot;)&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(2)如果我们是Linux 或 Mac平台,我们不需要5(1)(C)的功能“在&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;检出&lt;/span&gt;或&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;克隆远程版本库&lt;/span&gt;时，Git自动把LF转换成CRLF”。然而当一个CRLF作为行结束符的文件在我们的Linux 或 Mac平台不小心被引入时，你肯定想让 Git 修正。 所以，你可以通过&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;config --global core.autocrlf input&lt;/span&gt;命令&lt;span style=&quot;box-sizing: border-box; outline: 0px; overflow-wrap: break-word;text-decoration:underline;&quot;&gt;把 core.autocrlf 设置成 input&lt;/span&gt;&amp;nbsp;来告诉 Git 在提交(commit)时把CRLF转换成LF，检出(git checkout)时不转换&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; margin-left: 0cm; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); overflow: auto hidden; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255); line-height: 26px !important;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; outline: 0px; font-weight: 700; overflow-wrap: break-word;&quot;&gt;(1)+(2):这样在 Windows 上的检出(checkout)文件中会保留CRLF，而在 Mac 和 Linux 上，以及版本库中会保留LF，从而保证我们项目团队正常跨系统git操作代码&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 22 Jan 2021 16:13:28 +0800</pubDate></item><item><title>Git使用命令</title><link>http://woaioa.com/?id=23</link><description>&lt;h1 class=&quot;postTitle&quot; style=&quot;margin: 0px; padding: 0px; font-size: 21px; font-weight: 300; color: rgb(89, 97, 114); font-family: Lato, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;a id=&quot;cb_post_title_url&quot; class=&quot;postTitle2 vertical-middle&quot; href=&quot;https://www.cnblogs.com/convict/p/10795320.html&quot; style=&quot;margin: 0px; padding: 0px; text-decoration-line: none; transition: all 0.3s ease 0s;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; vertical-align: middle;&quot;&gt;Git常用命令&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;&lt;div class=&quot;postBody&quot; style=&quot;margin: 0px; padding: 0px; font-size: 16px; line-height: 1.75; color: rgb(89, 97, 114); font-family: Lato, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;div id=&quot;cnblogs_post_body&quot; class=&quot;blogpost-body&quot; style=&quot;margin: 0px 0px 20px; padding: 0px; word-break: break-word;&quot;&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 18px;&quot;&gt;一、本地操作：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;1.其它&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git init：初始化本地库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git status：查看工作区、暂存区的状态&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git add &amp;lt;file name&amp;gt;：将工作区的“新建/修改”添加到暂存区&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git rm --cached &amp;lt;file name&amp;gt;：移除暂存区的修改&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git commit &amp;lt;file name&amp;gt;：将暂存区的内容提交到本地库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;　　tip：需要再编辑提交日志，比较麻烦，建议用下面带参数的提交方法&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;; font-size: 14px;&quot;&gt;git commit -m &amp;quot;提交日志&amp;quot; &amp;lt;file name&amp;gt;：文件从暂存区到本地库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;2.日志&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git log：查看历史提交&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　tip：空格向下翻页，b向上翻页，q退出&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git log --pretty=oneline：以漂亮的一行显示，包含全部哈希索引值&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git log --oneline：以简洁的一行显示，包含简洁哈希索引值&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git reflog：以简洁的一行显示，包含简洁哈希索引值，同时显示移动到某个历史版本所需的步数&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;3.版本控制&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git reset --hard 简洁/完整哈希索引值：回到指定哈希值所对应的版本&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git reset --hard HEAD：强制工作区、暂存区、本地库为当前HEAD指针所在的版本&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git reset --hard HEAD^：后退一个版本　　&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　tip：一个^表示回退一个版本&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git reset --hard HEAD~1：后退一个版本&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　tip：波浪线~后面的数字表示后退几个版本&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;4.比较差异&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git diff：比较工作区和暂存区的&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;所有文件&lt;/span&gt;差异&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git diff &amp;lt;file name&amp;gt;：比较工作区和暂存区的&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;指定文件&lt;/span&gt;的差异&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git diff HEAD|HEAD^|HEAD~|哈希索引值&amp;nbsp;&amp;lt;file name&amp;gt;：比较工作区跟本地库的某个版本的&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;指定文件&lt;/span&gt;的差异&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;5.分支操作&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git branch -v：查看所有分支&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git branch -d &amp;lt;分支名&amp;gt;：删除本地分支&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git branch &amp;lt;分支名&amp;gt;：新建分支&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git checkout &amp;lt;分支名&amp;gt;：切换分支&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;git merge &amp;lt;被合并分支名&amp;gt;：合并分支&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　tip：如master分支合并 hot_fix分支，那么当前必须处于master分支上，然后执行 git merge hot_fix 命令&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　tip2：合并出现冲突&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　　　①删除git自动标记符号，如&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; HEAD、&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;等&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　　　②修改到满意后，保存退出&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　　　③git add &amp;lt;file name&amp;gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;　　　　④git commit -m &amp;quot;日志信息&amp;quot;，此时后面不要带文件名&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px 3px; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;二、本地库跟远程库交互：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git clone &amp;lt;远程库地址&amp;gt;：克隆远程库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　功能：①完整的克隆远程库为本地库，②为本地库新建origin别名，③初始化本地库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git remote -v：查看远程库地址别名&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git remote add &amp;lt;别名&amp;gt; &amp;lt;远程库地址&amp;gt;：新建远程库地址别名&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git remote rm &amp;lt;别名&amp;gt;：删除本地中远程库别名&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git push &amp;lt;别名&amp;gt; &amp;lt;分支名&amp;gt;：本地库某个分支推送到远程库，分支必须指定&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git pull &amp;lt;别名&amp;gt; &amp;lt;分支名&amp;gt;：把远程库的修改拉取到本地&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　tip：该命令包括git fetch，git merge&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git fetch &amp;lt;远程库别名&amp;gt; &amp;lt;远程库分支名&amp;gt;：抓取远程库的指定分支到本地，但没有合并&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git merge &amp;lt;远程库别名/远程库分支名&amp;gt;：将抓取下来的远程的分支，跟当前所在分支进行合并&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;git fork：复制远程库&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;　　tip：一般是外面团队的开发人员fork本团队项目，然后进行开发，之后外面团队发起pull request，然后本团队进行审核，如无问题本团队进行merge（合并）到团队自己的远程库，整个流程就是本团队跟外面团队的协同开发流程，Linux的团队开发成员即为这种工作方式。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style=&quot;box-sizing: border-box; outline: 0px; margin: 8px 0px 16px; padding: 0px; font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, SimHei, Arial, SimSun; font-size: 28px; color: rgb(79, 79, 79); line-height: 36px; overflow-wrap: break-word; font-variant-ligatures: common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;Git :fatal: refusing to merge unrelated histories解决&lt;/h1&gt;&lt;p style=&quot;margin: 13px auto; padding: 0px;&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: 16px; font-variant-ligatures: common-ligatures; background-color: #FFFFFF;&quot;&gt;本地创建了一个仓库（有README)，把本地仓库和Github上关联以后，发现git pull，git feach提醒fatal: refusing to merge unrelated histories&lt;/span&gt;&lt;span style=&quot;margin: 0px; padding: 0px; font-size: 14px; font-family: &amp;quot;Microsoft YaHei&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); line-height: 26px; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-variant-ligatures: common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;上网查到原因是两个分支是两个不同的版本，具有不同的提交历史&amp;nbsp; 加一句&lt;/p&gt;&lt;pre class=&quot;prettyprint&quot; style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 24px; padding: 8px 16px 6px 56px; position: relative; font-family: &amp;quot;Source Code Pro&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;Anonymous Pro&amp;quot;, &amp;quot;Droid Sans Mono&amp;quot;, Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; overflow: auto hidden; border-top: none; border-right: none; border-bottom: 1px solid rgb(245, 246, 247); border-left: none; border-image: initial; line-height: 22px; overflow-wrap: break-word; background-color: rgb(40, 44, 52); z-index: 9; font-variant-ligatures: common-ligatures;&quot;&gt;&lt;span style=&quot;color: #FFFFFF;&quot;&gt;$git pull origin master --allow-unrelated-histories&lt;/span&gt;&lt;br/&gt;&lt;/pre&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-size: 16px; color: rgb(77, 77, 77); line-height: 26px; overflow-wrap: break-word; font-family: -apple-system, &amp;quot;SF UI Text&amp;quot;, Arial, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-variant-ligatures: common-ligatures; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;可以允许不相关历史提，强制合并，确实解决了这个问题，感谢网友&lt;/p&gt;&lt;h1 class=&quot;postTitle&quot; style=&quot;margin: 0px 0px 20px; padding: 0px; font-size: 28px; font-weight: 400; line-height: 1.8; color: rgb(51, 51, 51); font-family: &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;margin: 0px; padding: 0px; color: #333333; text-decoration-line: none; vertical-align: middle;&quot;&gt;&lt;a id=&quot;cb_post_title_url&quot; class=&quot;postTitle2 vertical-middle&quot; href=&quot;https://www.cnblogs.com/BonnieWss/p/11541748.html&quot; style=&quot;margin: 0px; padding: 0px; color: rgb(51, 51, 51); text-decoration-line: none;&quot;&gt;git add 时忽略某些文件或者文件夹&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 1.4em; color: rgb(18, 18, 18); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;Source Han Sans SC&amp;quot;, &amp;quot;Noto Sans CJK SC&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: medium; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;作用：.gitignore文件的作用是开发一个项目时可以规定哪些文件夹或者文件不需要提交到仓库中。&lt;/p&gt;&lt;p style=&quot;margin-top: 1.4em; margin-bottom: 1.4em; color: rgb(18, 18, 18); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;Source Han Sans SC&amp;quot;, &amp;quot;Noto Sans CJK SC&amp;quot;, &amp;quot;WenQuanYi Micro Hei&amp;quot;, sans-serif; font-size: medium; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;1、在git仓库根目录创建.gitignore&lt;/p&gt;&lt;pre style=&quot;margin-top: 0px; margin-bottom: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; overflow: auto; background-color: rgb(246, 246, 246); border-radius: 4px; color: rgb(18, 18, 18);&quot;&gt;#&amp;nbsp;/&amp;nbsp;表示&amp;nbsp;当前文件所在的目录

#&amp;nbsp;忽略public下的所有目录及文件
/public/*
#不忽略/public/assets，就是特例的意思，assets文件不忽略
!/public/assets

#&amp;nbsp;忽略具体的文件

index.php

#&amp;nbsp;忽略所有的php
*.php

#&amp;nbsp;忽略&amp;nbsp;a.php&amp;nbsp;b.php
[ab].php

#匹配规则和linux文件匹配一样
#以斜杠“/”开头表示目录；
#以星号“*”通配多个字符；
#以问号“?”通配单个字符
#以方括号“[]”包含单个字符的匹配列表；
#以叹号“!”表示不忽略(跟踪)匹配到的文件或目录；&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 22 Jan 2021 15:55:51 +0800</pubDate></item><item><title>PHP各版本支持MSSQL</title><link>http://woaioa.com/?id=22</link><description>&lt;p&gt;&lt;span style=&quot;background-color: #FFFFFF; color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px;&quot;&gt;&amp;nbsp; &amp;nbsp; 首先说一下，有的人可能在搜索查资料的时候，发现很多说的是用mssql的，所以注明一下，mssql扩展在PHP5.3版本以下就已经废弃了，不再使用，5.3以上版本都可以使用以下方式连接sqlserver数据库。&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;PHP ODBC下载地址：&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;a href=&quot;https://www.microsoft.com/download/details.aspx?id=36434&quot; rel=&quot;nofollow&quot; style=&quot;box-sizing: border-box; outline: 0px; margin: 0px; padding: 0px; text-decoration-line: none; cursor: pointer; color: rgb(103, 149, 181); overflow-wrap: break-word;&quot;&gt;https://www.microsoft.com/download/details.aspx?id=36434&lt;img src=&quot;http://woaioa.com/zb_users/upload/2020/12/202012011606792441158728.png&quot; title=&quot;1111.png&quot; alt=&quot;1111.png&quot;/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;PHP扩展&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;a href=&quot;https://msdn.microsoft.com/en-us/library/cc296170.aspx&quot; rel=&quot;nofollow&quot; style=&quot;box-sizing: border-box; outline: none; margin: 0px; padding: 0px; text-decoration-line: none; cursor: pointer; color: rgb(103, 149, 181); overflow-wrap: break-word;&quot;&gt;https://msdn.microsoft.com/en-us/library/cc296170.aspx&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;根据不同的PHP版本下载对应的PHP扩展&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;版本地址地址&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/connect/php/system-requirements-for-the-php-sql-driver?redirectedfrom=MSDN&amp;view=sql-server-ver15&quot; target=&quot;_blank&quot;&gt;https://docs.microsoft.com/en-us/sql/connect/php/system-requirements-for-the-php-sql-driver?redirectedfrom=MSDN&amp;amp;view=sql-server-ver15&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;1.选择对应的PHP的扩展包地址下载扩展包&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;PHP5.4-PHP5.6&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 32px; background-color: #FFFFFF;&quot;&gt;3.2&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120449&quot; data-linktype=&quot;external&quot; style=&quot;box-sizing: inherit; background-color: rgb(255, 255, 255); outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal;&quot;&gt;下载Windows软件包&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; background-color: #FFFFFF;&quot;&gt;PHP7.0&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 2rem; box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;5.3&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120447&quot; data-linktype=&quot;external&quot; style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; box-sizing: inherit; background-color: transparent; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px;&quot;&gt;下载Windows软件包&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; background-color: #FFFFFF;&quot;&gt;PHP7.1 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 2rem; box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;5.6.1&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120450&quot; data-linktype=&quot;external&quot; style=&quot;box-sizing: inherit; background-color: rgb(255, 255, 255); outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal;&quot;&gt;&lt;img src=&quot;https://docs.microsoft.com/en-us/sql/ssms/media/download-icon.png?view=sql-server-ver15&quot; alt=&quot;下载&quot; data-linktype=&quot;relative-path&quot; style=&quot;box-sizing: inherit; border: 0px; height: auto; max-width: 100%; outline-color: inherit; display: inline-block; color: rgb(23, 23, 23); font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120446&quot; data-linktype=&quot;external&quot; style=&quot;box-sizing: inherit; background-color: rgb(255, 255, 255); outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;下载Windows软件包&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120447&quot; data-linktype=&quot;external&quot; style=&quot;white-space: normal; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px;&quot;&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; background-color: #FFFFFF;&quot;&gt;PHP7.1以上&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 2rem; box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;5.8&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #FFFFFF; color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #FFFFFF; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120450&quot; data-linktype=&quot;external&quot;&gt;&lt;img src=&quot;https://docs.microsoft.com/en-us/sql/ssms/media/download-icon.png?view=sql-server-ver15&quot; alt=&quot;下载&quot; data-linktype=&quot;relative-path&quot; style=&quot;box-sizing: inherit; border: 0px; height: auto; max-width: 100%; outline-color: inherit; display: inline-block; color: rgb(23, 23, 23); font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal; background-color: rgb(255, 255, 255);&quot;/&gt;&lt;span style=&quot;color: #171717; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;a href=&quot;https://go.microsoft.com/fwlink/?linkid=2120362&quot; data-linktype=&quot;external&quot; style=&quot;box-sizing: inherit; background-color: rgb(255, 255, 255); outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; white-space: normal;&quot;&gt;下载Windows软件包&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;background-color: #FFFFFF; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;background-color: #FFFFFF; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;2.打开php.ini，搜索extension= ；在如下位置加入红框内的两句&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;extension=php_sqlsrv_56_ts.dll&amp;nbsp;&lt;br style=&quot;box-sizing: border-box; outline: 0px; margin: 0px; padding: 0px; overflow-wrap: break-word;&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;extension=php_pdo_sqlsrv_56_ts.dll&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;这个“56”表示的是php的版本号，自己的PHP版本是多少就写多少。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;(注意是否线程内安全。可使用 phpinfo()查看） 非线程内安全是用_nts.dll的文件，线程内安全则使用-extension=php_sqlsrv_56_nts.dll&amp;nbsp; &amp;nbsp; &amp;nbsp;extension=php_pdo_sqlsrv_56_nts.dll&amp;nbsp;)&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2020/12/202012011606792493207814.png&quot; title=&quot;22222.png&quot; alt=&quot;22222.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;3.根据上面的链接地址，下载上ODBC驱动，一直下一步，安装好就可以了。&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;4.重启服务，使用phpinfo查看php信息，有以下信息，则代表可以连接sqlserever数据库了&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;img src=&quot;http://woaioa.com/zb_users/upload/2020/12/202012011606792562639827.png&quot; title=&quot;333.png&quot; alt=&quot;333.png&quot;/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;background-color: #FFFFFF; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;&amp;lt;?php
$server&amp;nbsp;=&amp;nbsp;&amp;quot;localhost&amp;quot;;&amp;nbsp;//服务器名称，在&amp;nbsp;sql&amp;nbsp;server&amp;nbsp;management&amp;nbsp;studio&amp;nbsp;的登录界面查看
$uid&amp;nbsp;=&amp;nbsp;&amp;quot;xxx&amp;quot;;&amp;nbsp;//数据库用户名
$pwd&amp;nbsp;=&amp;nbsp;&amp;quot;123456&amp;quot;;&amp;nbsp;//数据库密码
$db&amp;nbsp;&amp;nbsp;=&amp;nbsp;&amp;quot;test&amp;quot;;&amp;nbsp;//&amp;nbsp;数据库名
$connectionInfo&amp;nbsp;=&amp;nbsp;array(&amp;quot;UID&amp;quot;=&amp;gt;$uid,&amp;nbsp;&amp;quot;PWD&amp;quot;=&amp;gt;$pwd,&amp;nbsp;&amp;quot;Database&amp;quot;=&amp;gt;$db);
$conn&amp;nbsp;=&amp;nbsp;sqlsrv_connect(&amp;nbsp;$server,&amp;nbsp;$connectionInfo);
if(&amp;nbsp;$conn&amp;nbsp;==&amp;nbsp;false)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo&amp;nbsp;&amp;quot;连接失败！&amp;quot;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;die(&amp;nbsp;var_dump(&amp;nbsp;sqlsrv_errors(),&amp;nbsp;true));
}else{
	echo&amp;nbsp;&amp;quot;成功连接&amp;quot;;
}&lt;/pre&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;background-color: #FFFFFF; box-sizing: inherit; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; outline-color: inherit; vertical-align: inherit;&quot;&gt;&lt;span style=&quot;box-sizing: inherit; background-color: #FFFFFF; outline-color: inherit; cursor: pointer; text-decoration-line: none; overflow-wrap: break-word; outline-style: initial; outline-width: 0px; font-family: &amp;quot;Segoe UI&amp;quot;, SegoeUI, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 16px; vertical-align: inherit;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 16px; white-space: normal; box-sizing: border-box; outline: 0px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; background-color: #FFFFFF;&quot;&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; outline: 0px; margin-top: 0px; margin-bottom: 16px; padding: 0px; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px; color: rgb(77, 77, 77); line-height: 26px; overflow-x: auto; overflow-wrap: break-word; white-space: normal; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;background-color: #FFFFFF; color: #4D4D4D; font-family: &amp;quot;Microsoft YaHei&amp;quot;, &amp;quot;SF Pro Display&amp;quot;, Roboto, Noto, Arial, &amp;quot;PingFang SC&amp;quot;, sans-serif; font-size: 18px;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Sat, 12 Sep 2020 11:14:08 +0800</pubDate></item><item><title>PHP源码加密方法分享</title><link>http://woaioa.com/?id=21</link><description>&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; font-size: 16px; background-color: #FFFFFF;&quot;&gt;今天我来分享来一下如何通过PHP的自定义函数来加密我们的PHP源代码。&lt;/span&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;//返回随机字符串
function&amp;nbsp;randabc(){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$str=&amp;quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&amp;quot;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;str_shuffle($str);
}
&amp;nbsp;
//要加密的文件名称
$filename&amp;nbsp;=&amp;nbsp;&amp;#39;test.php&amp;#39;;
&amp;nbsp;&amp;nbsp;
$rand_k1&amp;nbsp;=&amp;nbsp;randabc();//随机密匙1
$rand_k2&amp;nbsp;=&amp;nbsp;randabc();//随机密匙2
$str&amp;nbsp;=&amp;nbsp;file_get_contents($filename);
$base_str&amp;nbsp;=&amp;nbsp;base64_encode($str);
$c&amp;nbsp;=&amp;nbsp;strtr($base_str,&amp;nbsp;$rand_k1,&amp;nbsp;$rand_k2);//根据密匙替换对应字符。
$c&amp;nbsp;=&amp;nbsp;$rand_k1.$rand_k2.$c;
&amp;nbsp;&amp;nbsp;
$q1&amp;nbsp;=&amp;nbsp;&amp;quot;O00O0O&amp;quot;;
$q2&amp;nbsp;=&amp;nbsp;&amp;quot;O0O000&amp;quot;;
$q3&amp;nbsp;=&amp;nbsp;&amp;quot;O0OO00&amp;quot;;
$q4&amp;nbsp;=&amp;nbsp;&amp;quot;OO0O00&amp;quot;;
$q5&amp;nbsp;=&amp;nbsp;&amp;quot;OO0000&amp;quot;;
$q6&amp;nbsp;=&amp;nbsp;&amp;quot;O00OO0&amp;quot;;
$s&amp;nbsp;=&amp;nbsp;&amp;#39;$&amp;#39;.$q6.&amp;#39;=urldecode(&amp;quot;%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A&amp;quot;);$&amp;#39;.$q1.&amp;#39;=$&amp;#39;.$q6.&amp;#39;{3}.$&amp;#39;.$q6.&amp;#39;{6}.$&amp;#39;.$q6.&amp;#39;{33}.$&amp;#39;.$q6.&amp;#39;{30};$&amp;#39;.$q3.&amp;#39;=$&amp;#39;.$q6.&amp;#39;{33}.$&amp;#39;.$q6.&amp;#39;{10}.$&amp;#39;.$q6.&amp;#39;{24}.$&amp;#39;.$q6.&amp;#39;{10}.$&amp;#39;.$q6.&amp;#39;{24};$&amp;#39;.$q4.&amp;#39;=$&amp;#39;.$q3.&amp;#39;{0}.$&amp;#39;.$q6.&amp;#39;{18}.$&amp;#39;.$q6.&amp;#39;{3}.$&amp;#39;.$q3.&amp;#39;{0}.$&amp;#39;.$q3.&amp;#39;{1}.$&amp;#39;.$q6.&amp;#39;{24};$&amp;#39;.$q5.&amp;#39;=$&amp;#39;.$q6.&amp;#39;{7}.$&amp;#39;.$q6.&amp;#39;{13};$&amp;#39;.$q1.&amp;#39;.=$&amp;#39;.$q6.&amp;#39;{22}.$&amp;#39;.$q6.&amp;#39;{36}.$&amp;#39;.$q6.&amp;#39;{29}.$&amp;#39;.$q6.&amp;#39;{26}.$&amp;#39;.$q6.&amp;#39;{30}.$&amp;#39;.$q6.&amp;#39;{32}.$&amp;#39;.$q6.&amp;#39;{35}.$&amp;#39;.$q6.&amp;#39;{26}.$&amp;#39;.$q6.&amp;#39;{30};eval($&amp;#39;.$q1.&amp;#39;(&amp;quot;&amp;#39;.base64_encode(&amp;#39;$&amp;#39;.$q2.&amp;#39;=&amp;quot;&amp;#39;.$c.&amp;#39;&amp;quot;;eval(\&amp;#39;?&amp;gt;\&amp;#39;.$&amp;#39;.$q1.&amp;#39;($&amp;#39;.$q3.&amp;#39;($&amp;#39;.$q4.&amp;#39;($&amp;#39;.$q2.&amp;#39;,$&amp;#39;.$q5.&amp;#39;*2),$&amp;#39;.$q4.&amp;#39;($&amp;#39;.$q2.&amp;#39;,$&amp;#39;.$q5.&amp;#39;,$&amp;#39;.$q5.&amp;#39;),$&amp;#39;.$q4.&amp;#39;($&amp;#39;.$q2.&amp;#39;,0,$&amp;#39;.$q5.&amp;#39;))));&amp;#39;).&amp;#39;&amp;quot;));&amp;#39;;
&amp;nbsp;&amp;nbsp;
$s&amp;nbsp;=&amp;nbsp;&amp;#39;&amp;lt;?php
&amp;#39;.$s.&amp;#39;
?&amp;gt;&amp;#39;;
&amp;nbsp;&amp;nbsp;
//生成&amp;nbsp;加密后的PHP文件
$len&amp;nbsp;=&amp;nbsp;file_put_contents(&amp;#39;new_&amp;#39;.$filename,&amp;nbsp;$s);
if($len){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo&amp;nbsp;&amp;#39;加密成功，写入文件成功！&amp;#39;;
}else{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo&amp;nbsp;&amp;#39;写入文件失败！&amp;#39;;
}&lt;/pre&gt;&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; font-size: 16px; background-color: #FFFFFF;&quot;&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Wed, 08 Jul 2020 09:11:07 +0800</pubDate></item><item><title>PHP数组字段相似度排序</title><link>http://woaioa.com/?id=20</link><description>&lt;p&gt;&lt;span style=&quot;color: #333333; font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; font-size: 16px; background-color: #FFFFFF;&quot;&gt;今天有一个客户有这么一个需求，要求对某篇文章的相关内容的列表，在跟文章标题进行相似度排序，于是想了又想，写了一个小算法，可以根据关键字相似度对数组某个字段进行排序。&lt;/span&gt;&lt;/p&gt;&lt;h4 style=&quot;margin: 10px 0px; padding: 10px 0px 10px 10px; font-size: 20px; font-weight: 400; border-left: 2px solid rgb(199, 199, 199); line-height: 18px; color: rgb(51, 51, 51); font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; white-space: normal;&quot;&gt;废话少说，直接上代码：&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;//原数据
$data&amp;nbsp;=&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;1,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;YzmCMS内容管理系统&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;2,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;开源CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;3,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;YzmCMS轻量级开源内容管理系统&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;4,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;内容管理系统&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;5,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;免费内容管理系统&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;6,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;YzmCMS开源CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;7,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;免费CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;8,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;轻量级开源CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;9,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;YzmCMS建站CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;id&amp;#39;=&amp;gt;10,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;#39;title&amp;#39;=&amp;gt;&amp;#39;免费开源CMS&amp;#39;,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;],
];&lt;/pre&gt;&lt;h4 style=&quot;margin: 10px 0px; padding: 10px 0px 10px 10px; font-size: 20px; font-weight: 400; border-left: 2px solid rgb(199, 199, 199); line-height: 18px; color: rgb(51, 51, 51); font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; white-space: normal;&quot;&gt;处理方法：&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;/**
&amp;nbsp;*&amp;nbsp;根据关键字对数组字段进行相似度排序
&amp;nbsp;*&amp;nbsp;@param&amp;nbsp;&amp;nbsp;&amp;nbsp;$array&amp;nbsp;&amp;nbsp;&amp;nbsp;原数组
&amp;nbsp;*&amp;nbsp;@param&amp;nbsp;&amp;nbsp;&amp;nbsp;$keyword&amp;nbsp;关键字
&amp;nbsp;*&amp;nbsp;@param&amp;nbsp;&amp;nbsp;&amp;nbsp;$arr_key&amp;nbsp;要匹配的数组字段名
&amp;nbsp;*&amp;nbsp;@return&amp;nbsp;&amp;nbsp;array&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;排序好的数组
&amp;nbsp;*/
function&amp;nbsp;similar_arr($array,&amp;nbsp;$keyword,&amp;nbsp;$arr_key&amp;nbsp;=&amp;nbsp;&amp;#39;title&amp;#39;){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//数组key小于3，直接返回，不符合排序要求（特例，可不写）
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count($array)&amp;lt;=&amp;nbsp;3){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;$array;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//数组相似度处理
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;($array&amp;nbsp;as&amp;nbsp;$key&amp;nbsp;=&amp;gt;&amp;nbsp;$value)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;similar_text($value[$arr_key],&amp;nbsp;$keyword,&amp;nbsp;$percent);&amp;nbsp;&amp;nbsp;//similar_text()&amp;nbsp;函数计算两个字符串的相似度
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$value[&amp;#39;percent&amp;#39;]&amp;nbsp;=&amp;nbsp;$percent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$data[]&amp;nbsp;=&amp;nbsp;$value;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//取出数组中percent的一列，返回一维数组
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$percent&amp;nbsp;=&amp;nbsp;&amp;nbsp;array_column($data,&amp;nbsp;&amp;#39;percent&amp;#39;);&amp;nbsp;//array_column()&amp;nbsp;返回输入数组中某个单一列的值。&amp;nbsp;PHP&amp;nbsp;版本：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5.5+&amp;nbsp;
&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//排序，根据&amp;nbsp;percent&amp;nbsp;排序
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;array_multisort($percent,&amp;nbsp;SORT_DESC,&amp;nbsp;$data);&amp;nbsp;//array_multisort()&amp;nbsp;函数返回一个排序数组
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;$data;
}&lt;/pre&gt;&lt;h4 style=&quot;margin: 10px 0px; padding: 10px 0px 10px 10px; font-size: 20px; font-weight: 400; border-left: 2px solid rgb(199, 199, 199); line-height: 18px; color: rgb(51, 51, 51); font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; white-space: normal;&quot;&gt;使用方法：&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;$res&amp;nbsp;=&amp;nbsp;similar_arr($data,&amp;nbsp;&amp;#39;YzmCMS&amp;#39;);
var_dump($res);&lt;/pre&gt;&lt;h4 style=&quot;margin: 10px 0px; padding: 10px 0px 10px 10px; font-size: 20px; font-weight: 400; border-left: 2px solid rgb(199, 199, 199); line-height: 18px; color: rgb(51, 51, 51); font-family: &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, simsun; white-space: normal;&quot;&gt;运行结果：&lt;/h4&gt;&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;array(10)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;[0]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(6)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(15)&amp;nbsp;&amp;quot;YzmCMS开源CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(57.142857142857)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[1]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(9)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(15)&amp;nbsp;&amp;quot;YzmCMS建站CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(57.142857142857)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[2]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(1)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(24)&amp;nbsp;&amp;quot;YzmCMS内容管理系统&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(40)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[3]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(9)&amp;nbsp;&amp;quot;开源CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(40)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[4]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(7)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(9)&amp;nbsp;&amp;quot;免费CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(40)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[5]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(10)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(15)&amp;nbsp;&amp;quot;免费开源CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(28.571428571429)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[6]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(3)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(39)&amp;nbsp;&amp;quot;YzmCMS轻量级开源内容管理系统&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(26.666666666667)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[7]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(8)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(18)&amp;nbsp;&amp;quot;轻量级开源CMS&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(25)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[8]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(4)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(18)&amp;nbsp;&amp;quot;内容管理系统&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(0)
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;[9]=&amp;gt;
&amp;nbsp;&amp;nbsp;array(3)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;id&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int(5)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;title&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string(24)&amp;nbsp;&amp;quot;免费内容管理系统&amp;quot;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[&amp;quot;percent&amp;quot;]=&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;float(0)
&amp;nbsp;&amp;nbsp;}
}&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Wed, 08 Jul 2020 09:01:26 +0800</pubDate></item><item><title>PHP常用函数小全（做个笔记）</title><link>http://woaioa.com/?id=18</link><description>&lt;pre class=&quot;prism-highlight prism-language-php&quot;&gt;usleep()&amp;nbsp;函数延迟代码执行若干微秒。
unpack()&amp;nbsp;函数从二进制字符串对数据进行解包。
uniqid()&amp;nbsp;函数基于以微秒计的当前时间，生成一个唯一的&amp;nbsp;ID。
time_sleep_until()&amp;nbsp;函数延迟代码执行直到指定的时间。
time_nanosleep()&amp;nbsp;函数延迟代码执行若干秒和纳秒。
sleep()&amp;nbsp;函数延迟代码执行若干秒。
show_source()&amp;nbsp;函数对文件进行语法高亮显示。
strip_whitespace()&amp;nbsp;函数返回已删除&amp;nbsp;PHP&amp;nbsp;注释以及空白字符的源代码文件。
pack()&amp;nbsp;函数把数据装入一个二进制字符串。
ignore_user_abort()&amp;nbsp;函数设置与客户机断开是否会终止脚本的执行。
highlight_string()&amp;nbsp;函数对字符串进行语法高亮显示。
highlight_file()&amp;nbsp;函数对文件进行语法高亮显示。
get_browser()&amp;nbsp;函数返回用户浏览器的性能。
exit()&amp;nbsp;函数输出一条消息，并退出当前脚本。
eval()&amp;nbsp;函数把字符串按照&amp;nbsp;PHP&amp;nbsp;代码来计算。
die()&amp;nbsp;函数输出一条消息，并退出当前脚本。
defined()&amp;nbsp;函数检查某常量是否存在。
define()&amp;nbsp;函数定义一个常量。
constant()&amp;nbsp;函数返回常量的值。
connection_status()&amp;nbsp;函数返回当前的连接状态。
connection_aborted()&amp;nbsp;函数检查是否断开客户机。
zip_read()&amp;nbsp;函数读取打开的&amp;nbsp;zip&amp;nbsp;档案中的下一个文件。
zip_open()&amp;nbsp;函数打开&amp;nbsp;ZIP&amp;nbsp;文件以供读取。
zip_entry_read()&amp;nbsp;函数从打开的&amp;nbsp;zip&amp;nbsp;档案项目中获取内容。
zip_entry_open()&amp;nbsp;函数打开一个&amp;nbsp;ZIP&amp;nbsp;档案项目以供读取。
zip_entry_name()&amp;nbsp;函数返回&amp;nbsp;zip&amp;nbsp;档案项目的名称。
zip_entry_filesize()&amp;nbsp;函数返回&amp;nbsp;zip&amp;nbsp;档案项目的原始大小（在压缩之前）。
zip_entry_compressionmethod()&amp;nbsp;函数返回&amp;nbsp;zip&amp;nbsp;档案项目的压缩方法。
zip_entry_compressedsize()&amp;nbsp;函数返回&amp;nbsp;zip&amp;nbsp;档案项目的压缩文件尺寸。
zip_entry_close()&amp;nbsp;函数关闭由&amp;nbsp;zip_entry_open()&amp;nbsp;函数打开的&amp;nbsp;zip&amp;nbsp;档案文件。
zip_close()&amp;nbsp;函数关闭由&amp;nbsp;zip_open()&amp;nbsp;函数打开的&amp;nbsp;zip&amp;nbsp;档案文件。
xml_set_unparsed_entity_decl_handler()&amp;nbsp;函数规定在遇到无法解析的实体名称（NDATA）声明时被调用的函数。
xml_set_processing_instruction_handler()&amp;nbsp;函数规定当解析器在&amp;nbsp;XML&amp;nbsp;文档中找到处理指令时所调用的函数。
xml_set_object()&amp;nbsp;函数允许在对象中使用&amp;nbsp;XML&amp;nbsp;解析器。
xml_set_notation_decl_handler()&amp;nbsp;函数规定当解析器在&amp;nbsp;XML&amp;nbsp;文档中找到符号声明时被调用的函数。
xml_set_external_entity_ref_handler()&amp;nbsp;函数规定当解析器在&amp;nbsp;XML&amp;nbsp;文档中找到外部实体时被调用的函数。
xml_set_element_handler()&amp;nbsp;函数建立起始和终止元素处理器。
xml_set_default_handler()&amp;nbsp;函数为&amp;nbsp;XML&amp;nbsp;解析器建立默认的数据处理器。
xml_set_character_data_handler()&amp;nbsp;函数建立字符数据处理器。
xml_parser_set_option()&amp;nbsp;函数为&amp;nbsp;XML&amp;nbsp;解析器进行选项设置。
xml_parser_get_option()&amp;nbsp;函数从&amp;nbsp;XML&amp;nbsp;解析器获取选项设置信息。
xml_parser_free()&amp;nbsp;函数释放&amp;nbsp;XML&amp;nbsp;解析器。
xml_parser_create()&amp;nbsp;函数创建&amp;nbsp;XML&amp;nbsp;解析器。
xml_parser_create_ns()&amp;nbsp;函数创建带有命名空间支持的&amp;nbsp;XML&amp;nbsp;解析器。
xml_parse_into_struct()&amp;nbsp;函数把&amp;nbsp;XML&amp;nbsp;数据解析到数组中。
xml_parse()&amp;nbsp;函数解析&amp;nbsp;XML&amp;nbsp;文档。
xml_get_error_code()&amp;nbsp;函数获取&amp;nbsp;XML&amp;nbsp;解析器错误代码。
xml_get_current_line_number()&amp;nbsp;函数获取&amp;nbsp;XML&amp;nbsp;解析器的当前行号。
xml_get_current_column_number()&amp;nbsp;函数获取&amp;nbsp;XML&amp;nbsp;解析器的当前列号。
xml_get_current_byte_index()&amp;nbsp;函数获取&amp;nbsp;XML&amp;nbsp;解析器的当前字节索引。
xml_error_string()&amp;nbsp;函数获取&amp;nbsp;XML&amp;nbsp;解析器的错误描述。
utf8_encode()&amp;nbsp;函数把&amp;nbsp;ISO-8859-1&amp;nbsp;字符串编码为&amp;nbsp;UTF-8。
utf8_decode()&amp;nbsp;函数把&amp;nbsp;UTF-8&amp;nbsp;字符串解码为&amp;nbsp;ISO-8859-1。
wordwrap()&amp;nbsp;函数按照指定长度对字符串进行折行处理。
vsprintf()&amp;nbsp;函数把格式化字符串写入变量中。
vprintf()&amp;nbsp;函数输出格式化的字符串。
vfprintf()&amp;nbsp;函数把格式化的字符串写到指定的输出流。
ucwords()&amp;nbsp;函数把字符串中每个单词的首字符转换为大写。
ucfirst()&amp;nbsp;函数把字符串中的首字符转换为大写。
trim()&amp;nbsp;函数从字符串的两端删除空白字符和其他预定义字符。
substr_replace()&amp;nbsp;函数把字符串的一部分替换为另一个字符串。
substr_count()&amp;nbsp;函数计算子串在字符串中出现的次数。
substr_compare()&amp;nbsp;函数从指定的开始长度比较两个字符串。
substr()&amp;nbsp;函数返回字符串的一部分。
strtr()&amp;nbsp;函数转换字符串中特定的字符。
strtoupper()&amp;nbsp;函数把字符串转换为大写。
strtolower()&amp;nbsp;函数把字符串转换为小写。
strtok()&amp;nbsp;函数把字符串分割为更小的字符串。
strstr()&amp;nbsp;函数搜索一个字符串在另一个字符串中的第一次出现。
strspn()&amp;nbsp;函数返回在字符串中包含的特定字符的数目。
strrpos()&amp;nbsp;函数查找字符串在另一个字符串中最后一次出现的位置。
strripos()&amp;nbsp;函数查找字符串在另一个字符串中最后一次出现的位置。
strrev()&amp;nbsp;函数反转字符串。
strrchr()&amp;nbsp;函数查找字符串在另一个字符串中最后一次出现的位置，并返回从该位置到字符串结尾的所有字符。
strpos()&amp;nbsp;函数返回字符串在另一个字符串中第一次出现的位置。
strpbrk()&amp;nbsp;函数在字符串中搜索指定字符中的任意一个。
strncmp()&amp;nbsp;函数比较两个字符串。
strncasecmp()&amp;nbsp;函数比较两个字符串。
strnatcmp()&amp;nbsp;函数使用一种“自然”算法来比较两个字符串。
strnatcasecmp()&amp;nbsp;函数使用一种“自然”算法来比较两个字符串。
strlen()&amp;nbsp;函数返回字符串的长度。
stristr()&amp;nbsp;函数查找字符串在另一个字符串中第一次出现的位置。
stripos()&amp;nbsp;函数返回字符串在另一个字符串中第一次出现的位置。
stripslashes()&amp;nbsp;函数删除由&amp;nbsp;addslashes()&amp;nbsp;函数添加的反斜杠。
stripcslashes()&amp;nbsp;函数删除由&amp;nbsp;addcslashes()&amp;nbsp;函数添加的反斜杠。
strip_tags()&amp;nbsp;函数剥去&amp;nbsp;HTML、XML&amp;nbsp;以及&amp;nbsp;PHP&amp;nbsp;的标签。
strcspn()&amp;nbsp;函数返回在找到任何指定的字符之前，在字符串查找的字符数。
strcoll()&amp;nbsp;函数比较两个字符串。
strcmp()&amp;nbsp;函数比较两个字符串。
strchr()&amp;nbsp;函数搜索一个字符串在另一个字符串中的第一次出现。
strcasecmp()&amp;nbsp;函数比较两个字符串。
str_word_count()&amp;nbsp;函数计算字符串中的单词数。
str_split()&amp;nbsp;函数把字符串分割到数组中。
str_shuffle()&amp;nbsp;函数随机地打乱字符串中的所有字符。
str_rot13()&amp;nbsp;函数对字符串执行&amp;nbsp;ROT13&amp;nbsp;编码。
str_replace()&amp;nbsp;函数使用一个字符串替换字符串中的另一些字符。
str_repeat()&amp;nbsp;函数把字符串重复指定的次数。
str_pad()&amp;nbsp;函数把字符串填充为指定的长度。
str_ireplace()&amp;nbsp;函数使用一个字符串替换字符串中的另一些字符。
sscanf()&amp;nbsp;函数根据指定的格式解析来自一个字符串的输入。
sprintf()&amp;nbsp;函数把格式化的字符串写写入一个变量中。
soundex()&amp;nbsp;函数计算字符串的&amp;nbsp;soundex&amp;nbsp;键。
similar_text()&amp;nbsp;函数计算两个字符串的匹配字符的数目。
sha1_file()&amp;nbsp;函数计算文件的&amp;nbsp;SHA-1&amp;nbsp;散列。
sha1()&amp;nbsp;函数计算字符串的&amp;nbsp;SHA-1&amp;nbsp;散列。
setlocale()&amp;nbsp;函数设置地区信息（地域信息）。
rtrim()&amp;nbsp;P&amp;nbsp;rtrim()&amp;nbsp;函数&amp;nbsp;
PHP&amp;nbsp;String&amp;nbsp;函数
quotemeta()&amp;nbsp;函数在字符串中某些预定义的字符前添加反斜杠。
quoted_printable_decode()&amp;nbsp;函数对经过&amp;nbsp;quoted-printable&amp;nbsp;编码后的字符串进行解码，返回&amp;nbsp;8&amp;nbsp;位的字符串。
printf()&amp;nbsp;函数输出格式化的字符串。
print()&amp;nbsp;函数输出一个或多个字符串。
parse_str()&amp;nbsp;函数把查询字符串解析到变量中。
ord()&amp;nbsp;函数返回字符串第一个字符的&amp;nbsp;ASCII&amp;nbsp;值。
number_format()&amp;nbsp;函数通过千位分组来格式化数字。
nl2br()&amp;nbsp;函数在字符串中的每个新行&amp;nbsp;(\n)&amp;nbsp;之前插入&amp;nbsp;HTML&amp;nbsp;换行符&amp;nbsp;(&amp;lt;br&amp;nbsp;/&amp;gt;)。
nl_langinfo()&amp;nbsp;函数返回指定的本地信息。
money_format()&amp;nbsp;函数把字符串格式化为货币字符串。
metaphone()&amp;nbsp;函数计算字符串的&amp;nbsp;metaphone&amp;nbsp;键。
md5_file()&amp;nbsp;函数计算文件的&amp;nbsp;MD5&amp;nbsp;散列。
md5()&amp;nbsp;函数计算字符串的&amp;nbsp;MD5&amp;nbsp;散列。
ltrim()&amp;nbsp;函数从字符串左侧删除空格或其他预定义字符。
localeconv()&amp;nbsp;函数返回包含本地数字及货币信息格式的数组。
levenshtein()&amp;nbsp;函数返回两个字符串之间的&amp;nbsp;Levenshtein&amp;nbsp;距离。
join()&amp;nbsp;函数把数组元素组合为一个字符串。
implode()&amp;nbsp;函数把数组元素组合为一个字符串。
htmlspecialchars()&amp;nbsp;函数把一些预定义的字符转换为&amp;nbsp;HTML&amp;nbsp;实体。
html_entity_decode()&amp;nbsp;chars_decode()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;String&amp;nbsp;函数
htmlentities()&amp;nbsp;函数把字符转换为&amp;nbsp;HTML&amp;nbsp;实体。
html_entity_decode()&amp;nbsp;函数把&amp;nbsp;HTML&amp;nbsp;实体转换为字符。
hebrevc()&amp;nbsp;函数把希伯来文本从右至左的流转换为左至右的流。它也会把新行&amp;nbsp;(\n)&amp;nbsp;转换为&amp;nbsp;&amp;lt;br&amp;nbsp;/&amp;gt;。
hebrev()&amp;nbsp;函数把希伯来文本从右至左的流转换为左至右的流。
get_html_translation_table()&amp;nbsp;函数返回被&amp;nbsp;htmlentities()&amp;nbsp;和&amp;nbsp;htmlspecialchars()&amp;nbsp;函数使用的翻译表。
fprintf()&amp;nbsp;函数把格式化的字符串写到指定的输出流（例如：文件或数据库）。
explode()&amp;nbsp;函数把字符串分割为数组。
echo()&amp;nbsp;函数输出一个或多个字符串。
crypt()&amp;nbsp;函数返回使用&amp;nbsp;DES、Blowfish&amp;nbsp;或&amp;nbsp;MD5&amp;nbsp;加密的字符串。
crc32()&amp;nbsp;函数计算一个字符串的&amp;nbsp;crc32&amp;nbsp;多项式。
count_chars()&amp;nbsp;函数返回字符串所用字符的信息。
convert_uuencode()&amp;nbsp;函数使用&amp;nbsp;uuencode&amp;nbsp;算法对字符串进行编码。
convert_uudecode()&amp;nbsp;函数对&amp;nbsp;uuencode&amp;nbsp;编码的字符串进行解码。
convert_cyr_string()&amp;nbsp;函数把字符由一种&amp;nbsp;Cyrillic&amp;nbsp;字符转换成另一种。
chunk_split()&amp;nbsp;函数把字符串分割为一连串更小的部分。
chr()&amp;nbsp;函数从指定的&amp;nbsp;ASCII&amp;nbsp;值返回字符。
chop()&amp;nbsp;函数从字符串的末端开始删除空白字符或其他预定义字符。
bin2hex()&amp;nbsp;函数把&amp;nbsp;ASCII&amp;nbsp;字符的字符串转换为十六进制值。
addslashes()&amp;nbsp;函数在指定的预定义字符前添加反斜杠。
addcslashes()&amp;nbsp;函数在指定的字符前添加反斜杠。
xpath()&amp;nbsp;函数运行对&amp;nbsp;XML&amp;nbsp;文档的&amp;nbsp;XPath&amp;nbsp;查询。
simplexml_load_string()&amp;nbsp;函数把&amp;nbsp;XML&amp;nbsp;字符串载入对象中。
simplexml_load_file()&amp;nbsp;函数把&amp;nbsp;XML&amp;nbsp;文档载入对象中。
simplexml_import_dom()&amp;nbsp;函数把&amp;nbsp;DOM&amp;nbsp;节点转换为&amp;nbsp;SimpleXMLElement&amp;nbsp;对象。
registerXPathNamespace()&amp;nbsp;函数为下一次&amp;nbsp;XPath&amp;nbsp;查询创建命名空间语境。
getNamespace()&amp;nbsp;函数获取在&amp;nbsp;XML&amp;nbsp;文档中使用的命名空间。
getName()&amp;nbsp;函数从&amp;nbsp;SimpleXMLElement&amp;nbsp;对象获取&amp;nbsp;XML&amp;nbsp;元素的名称。
getDocNamespaces()&amp;nbsp;函数从&amp;nbsp;SimpleXMLElement&amp;nbsp;对象返回在&amp;nbsp;XML&amp;nbsp;文档中声明的命名空间。
children()&amp;nbsp;函数获取指定节点的子节点。
attributes()&amp;nbsp;函数获取&amp;nbsp;SimpleXML&amp;nbsp;元素的属性。
asXML()&amp;nbsp;函数以字符串的形式从&amp;nbsp;SimpleXMLElement&amp;nbsp;对象返回&amp;nbsp;XML&amp;nbsp;文档。
addChild()&amp;nbsp;函数向指定的&amp;nbsp;XML&amp;nbsp;节点添加一个子节点。
addAttribute()&amp;nbsp;函数给&amp;nbsp;SimpleXML&amp;nbsp;元素添加一个属性。
__construct()&amp;nbsp;函数创建一个新的&amp;nbsp;SimpleXMLElement&amp;nbsp;对象。
mysql_unbuffered_query()&amp;nbsp;函数向&amp;nbsp;MySQL&amp;nbsp;发送一条&amp;nbsp;SQL&amp;nbsp;查询（不获取&amp;nbsp;/&amp;nbsp;缓存结果）。
mysql_thread_id()&amp;nbsp;函数返回当前线程的&amp;nbsp;ID。
mysql_stat()&amp;nbsp;函数返回&amp;nbsp;MySQL&amp;nbsp;服务器的当前系统状态。
mysql_select_db()&amp;nbsp;函数设置活动的&amp;nbsp;MySQL&amp;nbsp;数据库。
mysql_result()&amp;nbsp;函数返回结果集中一个字段的值。
mysql_real_escape_string()&amp;nbsp;函数转义&amp;nbsp;SQL&amp;nbsp;语句中使用的字符串中的特殊字符。
mysql_query()&amp;nbsp;函数执行一条&amp;nbsp;MySQL&amp;nbsp;查询。
mysql_ping()&amp;nbsp;函数&amp;nbsp;Ping&amp;nbsp;一个服务器连接，如果没有连接则重新连接。
mysql_pconnect()&amp;nbsp;函数打开一个到&amp;nbsp;MySQL&amp;nbsp;服务器的持久连接。
mysql_num_rows()&amp;nbsp;函数返回结果集中行的数目。
mysql_num_fields()&amp;nbsp;函数返回结果集中字段的数。
mysql_list_processes()&amp;nbsp;函数列出&amp;nbsp;MySQL&amp;nbsp;进程。
mysql_list_dbs()&amp;nbsp;函数列出&amp;nbsp;MySQL&amp;nbsp;服务器中所有的数据库。
mysql_insert_id()&amp;nbsp;函数返回上一步&amp;nbsp;INSERT&amp;nbsp;操作产生的&amp;nbsp;ID。
mysql_info()&amp;nbsp;函数返回最近一条查询的信息。
mysql_get_server_info()&amp;nbsp;函数返回&amp;nbsp;MySQL&amp;nbsp;服务器的信息。
mysql_get_proto_info()&amp;nbsp;函数返回&amp;nbsp;MySQL&amp;nbsp;协议的信息。
mysql_get_host_info()&amp;nbsp;函数返回&amp;nbsp;MySQL&amp;nbsp;主机的信息。
mysql_get_client_info()&amp;nbsp;函数返回&amp;nbsp;MySQL&amp;nbsp;客户端信息。
mysql_free_result()&amp;nbsp;函数释放结果内存。
mysql_field_type()&amp;nbsp;函数返回结果集中指定字段的类型。
mysql_field_table()&amp;nbsp;函数返回指定字段所在的表名。
mysql_field_seek()&amp;nbsp;函数将结果集中的指针设定为指定的字段偏移量。
mysql_field_name()&amp;nbsp;函数取得结果中指定字段的字段名。
mysql_field_len()&amp;nbsp;函数返回指定字段的长度。
mysql_field_flags()&amp;nbsp;函数从结果中取得和指定字段关联的标志。
mysql_fetch_row()&amp;nbsp;函数从结果集中取得一行作为数字数组。
mysql_fetch_object()&amp;nbsp;函数从结果集（记录集）中取得一行作为对象。
mysql_fetch_lengths()&amp;nbsp;函数取得一行中每个字段的内容的长度。
mysql_fetch_field()&amp;nbsp;函数从结果集中取得列信息并作为对象返回。
mysql_fetch_assoc()&amp;nbsp;函数从结果集中取得一行作为关联数组。
mysql_fetch_array()&amp;nbsp;函数从结果集中取得一行作为关联数组，或数字数组，或二者兼有
mysql_error()&amp;nbsp;函数返回上一个&amp;nbsp;MySQL&amp;nbsp;操作产生的文本错误信息。
mysql_errno()&amp;nbsp;函数返回上一个&amp;nbsp;MySQL&amp;nbsp;操作中的错误信息的数字编码。
mysql_db_name()&amp;nbsp;函数取得&amp;nbsp;mysql_list_dbs()&amp;nbsp;调用所返回的数据库名。
mysql_data_seek()&amp;nbsp;函数移动内部结果的指针。
mysql_connect()&amp;nbsp;函数打开非持久的&amp;nbsp;MySQL&amp;nbsp;连接。
mysql_close()&amp;nbsp;函数关闭非持久的&amp;nbsp;MySQL&amp;nbsp;连接。
mysql_client_encoding()&amp;nbsp;函数返回当前连接的字符集的名称。
mysql_affected_rows()&amp;nbsp;函数返回前一次&amp;nbsp;MySQL&amp;nbsp;操作所影响的记录行数。
tanh()&amp;nbsp;函数返回双曲正切。
tan()&amp;nbsp;函数返回正切。
srand()&amp;nbsp;函数播下随机数发生器种子。
sqrt()&amp;nbsp;函数返回一个数的平方根。
sinh()&amp;nbsp;函数返回一个数的双曲正弦。
sin()&amp;nbsp;函数返回一个数的正弦。
round()&amp;nbsp;函数对浮点数进行四舍五入。
rand()&amp;nbsp;函数返回随机整数。
rad2deg()&amp;nbsp;函数把弧度数转换为角度数。
pow()&amp;nbsp;函数返回&amp;nbsp;x&amp;nbsp;的&amp;nbsp;y&amp;nbsp;次方。
pi()&amp;nbsp;函数返回圆周率的值。
octdec()&amp;nbsp;函数把八进制转换为十进制。
mt_srand()&amp;nbsp;播种&amp;nbsp;Mersenne&amp;nbsp;Twister&amp;nbsp;随机数生成器。
mt_rand()&amp;nbsp;使用&amp;nbsp;Mersenne&amp;nbsp;Twister&amp;nbsp;算法返回随机整数。
mt_getrandmax()&amp;nbsp;显示随机数的最大可能值。
min()&amp;nbsp;返回最小值。
max()&amp;nbsp;返回最大值。
log1p()&amp;nbsp;以返回&amp;nbsp;log(1&amp;nbsp;+&amp;nbsp;x)，甚至当&amp;nbsp;x&amp;nbsp;的值接近零也能计算出准确结果。
log10()&amp;nbsp;以&amp;nbsp;10&amp;nbsp;为底的对数。
log()&amp;nbsp;返回自然对数。
lcg_value()&amp;nbsp;组合线性同余发生器。
is_nan()&amp;nbsp;判断是否为合法数值。
is_infinite()&amp;nbsp;判断是否为无限值。
is_finite()&amp;nbsp;函数判断是否为有限值。
hypot()&amp;nbsp;函数计算一直角三角形的斜边长度。
hexdec()&amp;nbsp;函数把十六进制转换为十进制。
fmod()&amp;nbsp;函数显示随机数最大的可能值。
fmod()&amp;nbsp;函数返回除法的浮点数余数。
floor()&amp;nbsp;函数向下舍入为最接近的整数。
expm1()&amp;nbsp;函数返回&amp;nbsp;exp(x)&amp;nbsp;-&amp;nbsp;1，甚至当&amp;nbsp;number&amp;nbsp;的值接近零也能计算出准确结果。
exp()&amp;nbsp;函数计算&amp;nbsp;e&amp;nbsp;的指数。
deg2rad()&amp;nbsp;函数将角度转换为弧度。
decoct()&amp;nbsp;函数把十进制转换为八进制。
dechex()&amp;nbsp;函数把十进制转换为十六进制。
decbin()&amp;nbsp;函数把十进制转换为二进制。
cosh()&amp;nbsp;函数返回一个数的双曲余弦。
cos()&amp;nbsp;函数返回一个数的余弦。
ceil()&amp;nbsp;函数向上舍入为最接近的整数。
bindec()&amp;nbsp;函数把二进制转换为十进制。
base_convert()&amp;nbsp;函数在任意进制之间转换数字。
atanh()&amp;nbsp;函数返回一个角度的反双曲正切。
atan()&amp;nbsp;和&amp;nbsp;atan2()&amp;nbsp;和&amp;nbsp;atan2()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Math&amp;nbsp;函数
atan()&amp;nbsp;和&amp;nbsp;atan2()&amp;nbsp;和&amp;nbsp;atan2()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Math&amp;nbsp;函数
asinh()&amp;nbsp;函数返回一个数的反双曲正弦。
asin()&amp;nbsp;函数返回不同数值的反正弦，返回的结果是介于&amp;nbsp;-PI/2&amp;nbsp;与&amp;nbsp;PI/2&amp;nbsp;之间的弧度值。
acosh()&amp;nbsp;函数返回一个数的反双曲余弦。
acos()&amp;nbsp;函数返回一个数的反余弦。
abs()&amp;nbsp;函数返回一个数的绝对值。
mail()&amp;nbsp;函数允许您从脚本中直接发送电子邮件。
libxml_use_internal_errors()&amp;nbsp;函数禁用标准的&amp;nbsp;libxml&amp;nbsp;错误，并启用用户错误处理。
libxml_get_last_error()&amp;nbsp;函数从&amp;nbsp;libxml&amp;nbsp;错误缓冲中获取最后一个错误。
libxml_get_errors()&amp;nbsp;函数从&amp;nbsp;libxml&amp;nbsp;错误缓冲中获取错误。
libxml_clear_errors()&amp;nbsp;函数清空&amp;nbsp;libxml&amp;nbsp;错误缓冲。
setrawcookie()&amp;nbsp;函数不对&amp;nbsp;cookie&amp;nbsp;值进行&amp;nbsp;URL&amp;nbsp;编码，发送一个&amp;nbsp;HTTP&amp;nbsp;cookie。
setcookie()&amp;nbsp;函数向客户端发送一个&amp;nbsp;HTTP&amp;nbsp;cookie。
headers_sent()&amp;nbsp;函数检查&amp;nbsp;HTTP&amp;nbsp;报头是否发送/已发送到何处。
headers_list()&amp;nbsp;函数返回已发送的（或待发送的）响应头部的一个列表。
header()&amp;nbsp;函数向客户端发送原始的&amp;nbsp;HTTP&amp;nbsp;报头。
ftp_systype()&amp;nbsp;函数返回远程&amp;nbsp;FTP&amp;nbsp;服务器的系统类型标识符。
ftp_ssl_connect()&amp;nbsp;函数打开一个安全的&amp;nbsp;SSL-FTP&amp;nbsp;连接。
ftp_size()&amp;nbsp;函数返回指定文件的大小。
ftp_site()&amp;nbsp;函数向服务器发送&amp;nbsp;SITE&amp;nbsp;命令。
ftp_set_option()&amp;nbsp;函数设置各种&amp;nbsp;FTP&amp;nbsp;运行时选项。
ftp_rmdir()&amp;nbsp;函数删除一个目录。
ftp_rename()&amp;nbsp;函数更改&amp;nbsp;FTP&amp;nbsp;服务器上的文件或目录名。
ftp_rawlist()&amp;nbsp;函数返回指定目录中文件的详细列表。
ftp_raw()&amp;nbsp;函数向&amp;nbsp;FTP&amp;nbsp;服务器发送一个&amp;nbsp;raw&amp;nbsp;命令。
ftp_quit()&amp;nbsp;函数关闭&amp;nbsp;FTP&amp;nbsp;连接。
ftp_pwd()&amp;nbsp;函数返回当前目录名。
ftp_put()&amp;nbsp;函数把文件上传到服务器。
ftp_pasv()&amp;nbsp;函数把被动模式设置为打开或关闭。
ftp_nlist()&amp;nbsp;函数返回指定目录的文件列表。
ftp_nb_put()&amp;nbsp;函数把文件上传到服务器&amp;nbsp;(non-blocking)。
ftp_nb_get()&amp;nbsp;函数从&amp;nbsp;FTP&amp;nbsp;服务器上获取文件并写入本地文件&amp;nbsp;(non-blocking)。
ftp_nb_fput()&amp;nbsp;函数上传一个已打开的文件，并在&amp;nbsp;FTP&amp;nbsp;服务器上把它保存为文件&amp;nbsp;(non-blocking)。
ftp_nb_fget()&amp;nbsp;函数从&amp;nbsp;FTP&amp;nbsp;服务器上下载一个文件并保存到本地已经打开的一个文件中&amp;nbsp;(non-blocking)。
ftp_nb_continue()&amp;nbsp;函数连续获取&amp;nbsp;/&amp;nbsp;发送文件。
ftp_mkdir()&amp;nbsp;函数在&amp;nbsp;FTP&amp;nbsp;服务器上建立新目录。
ftp_mdtm()&amp;nbsp;函数返回指定文件的最后修改时间。
ftp_login()&amp;nbsp;函数登录&amp;nbsp;FTP&amp;nbsp;服务器。
ftp_get()&amp;nbsp;函数从&amp;nbsp;FTP&amp;nbsp;服务器上下载一个文件。
ftp_get_option()&amp;nbsp;函数返回当前&amp;nbsp;FTP&amp;nbsp;连接的各种不同的选项设置。
ftp_fput()&amp;nbsp;函数上传一个已经打开的文件到&amp;nbsp;FTP&amp;nbsp;服务器。
ftp_fget()&amp;nbsp;函数从&amp;nbsp;FTP&amp;nbsp;服务器上下载一个文件并保存到本地一个已经打开的文件中。
ftp_exec()&amp;nbsp;函数请求在&amp;nbsp;FTP&amp;nbsp;服务器上执行一个程序或命令。
ftp_delete()&amp;nbsp;函数删除&amp;nbsp;FTP&amp;nbsp;服务器上的一个文件。
ftp_connect()&amp;nbsp;函数建立一个新的&amp;nbsp;FTP&amp;nbsp;连接。
ftp_close()&amp;nbsp;函数关闭&amp;nbsp;FTP&amp;nbsp;连接。
ftp_chmod()&amp;nbsp;函数设置&amp;nbsp;FTP&amp;nbsp;服务器上指定文件的权限。
ftp_chdir()&amp;nbsp;函数改变&amp;nbsp;FTP&amp;nbsp;服务器上的当前目录。
ftp_cdup()&amp;nbsp;函数把当前目录改变为&amp;nbsp;FTP&amp;nbsp;服务器上的父目录。
ftp_alloc()&amp;nbsp;函数为要上传到&amp;nbsp;FTP&amp;nbsp;服务器的文件分配空间。
filter_var()&amp;nbsp;函数通过指定的过滤器过滤变量。
filter_var_array()&amp;nbsp;函数获取多项变量，并进行过滤。
filter_list()&amp;nbsp;函数返回包含所有得到支持的过滤器的一个数组。
filter_input_array()&amp;nbsp;函数从脚本外部获取多项输入，并进行过滤。
filter_input()&amp;nbsp;函数从脚本外部获取输入，并进行过滤。
filter_id()&amp;nbsp;函数返回指定过滤器的&amp;nbsp;ID&amp;nbsp;号。
filter_has_var()&amp;nbsp;函数检查是否存在指定输入类型的变量。
unlink()&amp;nbsp;函数删除文件。
umask()&amp;nbsp;函数改变当前的&amp;nbsp;umask。
touch()&amp;nbsp;函数设置指定文件的访问和修改时间。
tmpfile()&amp;nbsp;函数以读写（w+）模式建立一个具有唯一文件名的临时文件。
tempnam()&amp;nbsp;函数创建一个具有唯一文件名的临时文件。
symlink()&amp;nbsp;函数创建符号连接。
stat()&amp;nbsp;函数返回关于文件的信息。
set_file_buffer()&amp;nbsp;函数设置打开文件的缓冲大小。
rmdir()&amp;nbsp;函数删除空的目录。
rewind()&amp;nbsp;函数将文件指针的位置倒回文件的开头。
rename()&amp;nbsp;函数重命名文件或目录。
realpath()&amp;nbsp;函数返回绝对路径。
readlink()&amp;nbsp;函数返回符号连接指向的目标。
readfile()&amp;nbsp;函数输出一个文件。
popen()&amp;nbsp;函数打开进程文件指针。
pclose()&amp;nbsp;函数关闭由&amp;nbsp;popen()&amp;nbsp;打开的管道。
pathinfo()&amp;nbsp;函数以数组的形式返回文件路径的信息。
parse_ini_file()&amp;nbsp;函数解析一个配置文件，并以数组的形式返回其中的设置。
move_uploaded_file()&amp;nbsp;函数将上传的文件移动到新位置。
mkdir()&amp;nbsp;函数创建目录。
lstat()&amp;nbsp;函数返回关于文件或符号连接的信息。
linkinfo()&amp;nbsp;函数返回连接的信息。
link()&amp;nbsp;函数建立一个硬连接。
is_writeable()&amp;nbsp;函数判断指定的文件是否可写。
is_writable()&amp;nbsp;函数判断指定的文件是否可写。
is_uploaded_file()&amp;nbsp;函数判断指定的文件是否是通过&amp;nbsp;HTTP&amp;nbsp;POST&amp;nbsp;上传的。
is_readable()&amp;nbsp;函数判断指定文件名是否可读。
is_link()&amp;nbsp;函数判断指定文件名是否为一个符号连接。
is_file()&amp;nbsp;函数检查指定的文件名是否是正常的文件。
is_executable()&amp;nbsp;函数检查指定的文件是否可执行。
is_dir()&amp;nbsp;函数检查指定的文件是否是目录。
glob()&amp;nbsp;函数返回匹配指定模式的文件名或目录。
fwrite()&amp;nbsp;函数写入文件（可安全用于二进制文件）。
ftruncate()&amp;nbsp;函数把文件截断到指定的长度。
ftell()&amp;nbsp;函数在打开文件中的当前位置。
fstat()&amp;nbsp;函数返回关于打开文件的信息。
fseek()&amp;nbsp;函数在打开的文件中定位。
fscanf()&amp;nbsp;函数根据指定的格式对来自打开的文件的输入进行解析。
fread()&amp;nbsp;函数读取文件（可安全用于二进制文件）。
fputs()&amp;nbsp;函数写入文件（可安全用于二进制文件）。
fputcsv()&amp;nbsp;函数将行格式化为&amp;nbsp;CSV&amp;nbsp;并写入一个打开的文件。
fpassthru()&amp;nbsp;函数输出文件指针处的所有剩余数据。
fopen()&amp;nbsp;函数打开文件或者&amp;nbsp;URL。
fnmatch()&amp;nbsp;函数根据指定的模式来匹配文件名或字符串。
flock()&amp;nbsp;函数锁定或释放文件。
filetype()&amp;nbsp;函数返回指定文件或目录的类型。
filesize()&amp;nbsp;函数返回指定文件的大小。
fileperms()&amp;nbsp;函数返回文件或目录的权限。
fileowner()&amp;nbsp;函数返回文件的所有者。
filemtime()&amp;nbsp;函数返回文件内容上次的修改时间。
fileinode()&amp;nbsp;函数返回文件的&amp;nbsp;inode&amp;nbsp;编号。
filegroup()&amp;nbsp;函数返回指定文件的组&amp;nbsp;ID。
filectime()&amp;nbsp;函数返回指定文件的上次&amp;nbsp;inode&amp;nbsp;修改时间。
fileatime()&amp;nbsp;函数返回指定文件的上次访问时间。
file_put_contents()&amp;nbsp;函数把一个字符串写入文件中。
file_get_contents()&amp;nbsp;函数把整个文件读入一个字符串中。
file_exists()&amp;nbsp;函数检查文件或目录是否存在。
file()&amp;nbsp;函数把整个文件读入一个数组中。
fgetss()&amp;nbsp;函数从打开的文件中读取一行并过滤掉&amp;nbsp;HTML&amp;nbsp;和&amp;nbsp;PHP&amp;nbsp;标记。
fgets()&amp;nbsp;函数从文件指针中读取一行。
fgetcsv()&amp;nbsp;函数从文件指针中读入一行并解析&amp;nbsp;CSV&amp;nbsp;字段。
fgetc()&amp;nbsp;函数从文件指针中读取一个字符。
fflush()&amp;nbsp;函数将缓冲内容输出到文件。
feof()&amp;nbsp;函数检测是否已到达文件末尾&amp;nbsp;(eof)。
fclose()&amp;nbsp;函数关闭一个打开文件。
diskfreespace()&amp;nbsp;函数返回目录中的可用空间。该函数是&amp;nbsp;disk_free_space()&amp;nbsp;函数的别名。
disk_total_space()&amp;nbsp;函数返回指定目录的磁盘总大小。
disk_free_space()&amp;nbsp;函数返回目录中的可用空间
dirname()&amp;nbsp;函数返回路径中的目录部分。
clearstatcache()&amp;nbsp;函数拷贝文件。
clearstatcache()&amp;nbsp;函数清除文件状态缓存。
chown()&amp;nbsp;函数改变指定文件的所有者。
chmod()&amp;nbsp;函数改变文件模式。
chgrp()&amp;nbsp;函数改变文件所属的组。
basename()&amp;nbsp;函数返回路径中的文件名部分。
set_exception_handler()&amp;nbsp;handler()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Error&amp;nbsp;和&amp;nbsp;Logging&amp;nbsp;函数
set_exception_handler()&amp;nbsp;函数设置用户自定义的异常处理函数。
set_error_handler()&amp;nbsp;函数设置用户自定义的错误处理函数。
restore_exception_handler()&amp;nbsp;函数恢复之前的异常处理程序，该程序是由&amp;nbsp;set_exception_handler()&amp;nbsp;函数改变的。
restore_error_handler()&amp;nbsp;函数恢复之前的错误处理程序，该程序是由&amp;nbsp;set_error_handler()&amp;nbsp;函数改变的。
error_reporting()&amp;nbsp;设置&amp;nbsp;PHP&amp;nbsp;的报错级别并返回当前级别。
error_log()&amp;nbsp;函数向服务器错误记录、文件或远程目标发送一个错误。
error_get_last()&amp;nbsp;函数获取最后发生的错误。
debug_print_backtrace()&amp;nbsp;函数输出&amp;nbsp;backtrace。
debug_backtrace()&amp;nbsp;cktrace()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Error&amp;nbsp;和&amp;nbsp;Logging&amp;nbsp;函数
scandir()&amp;nbsp;函数返回一个数组，其中包含指定路径中的文件和目录。
rewinddir()&amp;nbsp;函数重置由&amp;nbsp;opendir()&amp;nbsp;打开的目录句柄。
readdir()&amp;nbsp;函数返回由&amp;nbsp;opendir()&amp;nbsp;打开的目录句柄中的条目。
opendir()&amp;nbsp;函数打开一个目录句柄，可由&amp;nbsp;closedir()，readdir()&amp;nbsp;和&amp;nbsp;rewinddir()&amp;nbsp;使用。
getcwd()&amp;nbsp;函数返回当前目录。
closedir()&amp;nbsp;函数关闭由&amp;nbsp;opendir()&amp;nbsp;函数打开的目录句柄。
dir()&amp;nbsp;函数打开一个目录句柄，并返回一个对象。这个对象包含三个方法：read()&amp;nbsp;,&amp;nbsp;rewind()&amp;nbsp;以及&amp;nbsp;close()。
chroot()&amp;nbsp;函数把当前进程的根目录改变为指定的目录。
chdir()&amp;nbsp;函数把当前的目录改变为指定的目录。
time()&amp;nbsp;函数返回当前时间的&amp;nbsp;Unix&amp;nbsp;时间戳。
strtotime()&amp;nbsp;函数将任何英文文本的日期时间描述解析为&amp;nbsp;Unix&amp;nbsp;时间戳。
strptime()&amp;nbsp;函数解析由&amp;nbsp;strftime()&amp;nbsp;生成的日期／时间。
strftime()&amp;nbsp;函数根据区域设置格式化本地时间／日期。
mktime()&amp;nbsp;函数返回一个日期的&amp;nbsp;Unix&amp;nbsp;时间戳。
microtime()&amp;nbsp;函数返回当前&amp;nbsp;Unix&amp;nbsp;时间戳和微秒数。
localtime()&amp;nbsp;函数返回本地时间（一个数组）。
idate()&amp;nbsp;函数将本地时间/日期格式化为整数。
gmstrftime()&amp;nbsp;函数根据本地区域设置格式化&amp;nbsp;GMT/UTC&amp;nbsp;时间／日期。
gmmktime()&amp;nbsp;函数取得&amp;nbsp;GMT&amp;nbsp;日期的&amp;nbsp;UNIX&amp;nbsp;时间戳。
gmdate()&amp;nbsp;函数格式化&amp;nbsp;GMT/UTC&amp;nbsp;日期/时间。
gettimeofday()&amp;nbsp;函数返回一个包含当前时间信息的数组。
getdate()&amp;nbsp;函数取得日期／时间信息。
date()&amp;nbsp;函数格式化一个本地时间／日期。
date_sunset()&amp;nbsp;函数返回指定的日期与地点的日落时间。
date_sunrise()&amp;nbsp;函数返回指定的日期与地点的日出时间。
date_default_timezone_set()&amp;nbsp;函数设置用在脚本中所有日期/时间函数的默认时区。
date_default_timezone_get()&amp;nbsp;函数返回脚本中所有日期时间函数所使用的默认时区。
checkdate()&amp;nbsp;函数验证一个格里高里日期。
UnixToJD()&amp;nbsp;函数把&amp;nbsp;Unix&amp;nbsp;时间戳转换为儒略日计数。
JulianToJD()&amp;nbsp;函数把儒略历转换为儒略日计数。
JewishToJD()&amp;nbsp;函数把犹太历法转换为儒略日计数。
JDToUnix()&amp;nbsp;函数把儒略日计数转换为&amp;nbsp;Unix&amp;nbsp;时间戳。
JDToGregorian()&amp;nbsp;lian()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Array&amp;nbsp;函数
JDToGregorian()&amp;nbsp;wish()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Array&amp;nbsp;函数
JDToGregorian()&amp;nbsp;函数把儒略日计数转换为格利高里历法。
JDToFrench()&amp;nbsp;函数把儒略日计数转换为法国共和国历法。
JDMonthName()&amp;nbsp;函数返回指定历法的月份字符串。
JDDayOfWeek()&amp;nbsp;函数返回日期在周几。
GregorianToJD()&amp;nbsp;函数将格利高里历法转换成为儒略日计数。
FrenchToJD()&amp;nbsp;函数将法国共和历法转换成为儒略日计数。
easter_days()&amp;nbsp;函数返回指定年份的复活节与&amp;nbsp;3&amp;nbsp;月&amp;nbsp;21&amp;nbsp;日之间的天数。
easter_date()&amp;nbsp;函数返回指定年份的复活节午夜的&amp;nbsp;Unix&amp;nbsp;时间戳。
cal_to_jd()&amp;nbsp;函数把指定的日期转换为儒略日计数。
cal_info()&amp;nbsp;函数返回一个数组，其中包含了关于给定历法的信息。
cal_from_jd()&amp;nbsp;函数把儒略日计数转换为指定历法的日期。
cal_days_in_month()&amp;nbsp;函数针对指定的年份和日历，返回一个月中的天数。
usort()&amp;nbsp;函数使用用户自定义的函数对数组排序。
uksort()&amp;nbsp;函数使用用户自定义的比较函数按照键名对数组排序，并保持索引关系。
uasort()&amp;nbsp;函数使用用户自定义的比较函数对数组排序，并保持索引关联（不为元素分配新的键）。
sort()&amp;nbsp;函数按升序对给定数组的值排序。
sizeof()&amp;nbsp;函数计算数组中的单元数目或对象中的属性个数。
shuffle()&amp;nbsp;函数把数组中的元素按随机顺序重新排列。
rsort()&amp;nbsp;函数对数组的元素按照键值进行逆向排序。与&amp;nbsp;arsort()&amp;nbsp;的功能基本相同。
reset()&amp;nbsp;函数把数组的内部指针指向第一个元素，并返回这个元素的值。
range()&amp;nbsp;函数创建并返回一个包含指定范围的元素的数组。
prev()&amp;nbsp;HP&amp;nbsp;prev()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Array&amp;nbsp;函数
pos()&amp;nbsp;函数是&amp;nbsp;current()&amp;nbsp;函数&amp;nbsp;的别名。它可返回数组中当前元素的值。
next()&amp;nbsp;函数把指向当前元素的指针移动到下一个元素的位置，并返回当前元素的值。
natsort()&amp;nbsp;函数用自然顺序算法对给定数组中的元素排序。
natcasesort()&amp;nbsp;函数用不区分大小写的自然顺序算法对给定数组中的元素排序。
list()&amp;nbsp;函数用数组中的元素为一组变量赋值。
ksort()&amp;nbsp;函数按照键名对数组排序，为数组值保留原来的键。
krsort()&amp;nbsp;函数将数组按照键逆向排序，为数组值保留原来的键。
key()&amp;nbsp;函数返回数组内部指针当前指向元素的键名。
in_array()&amp;nbsp;函数在数组中搜索给定的值。
extract()&amp;nbsp;extract()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Array&amp;nbsp;函数
end()&amp;nbsp;函数将数组内部指针指向最后一个元素，并返回该元素的值（如果成功）。
each()&amp;nbsp;函数生成一个由数组当前内部指针所指向的元素的键名和键值组成的数组，并把内部指针向前移动。
current()&amp;nbsp;函数返回数组中的当前元素（单元）。
count()&amp;nbsp;函数计算数组中的单元数目或对象中的属性个数。
compact()&amp;nbsp;函数创建一个由参数所带变量组成的数组。如果参数中存在数组，该数组中变量的值也会被获取。
asort()&amp;nbsp;函数对数组进行排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。
arsort()&amp;nbsp;函数对数组进行逆向排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。
array_walk_recursive()&amp;nbsp;cursive()&amp;nbsp;函数
&amp;nbsp;
PHP&amp;nbsp;Array&amp;nbsp;函数
array_walk()&amp;nbsp;函数对数组中的每个元素应用回调函数。如果成功则返回&amp;nbsp;TRUE，否则返回&amp;nbsp;FALSE。
array_values()&amp;nbsp;函数返回一个包含给定数组中所有键值的数组，但不保留键名。
array_unshift()&amp;nbsp;函数在数组开头插入一个或多个元素。
array_unique()&amp;nbsp;函数移除数组中的重复的值，并返回结果数组。
array_uintersect_assoc()&amp;nbsp;函数带索引检查计算数组的交集，用回调函数比较数据。
array_uintersect()&amp;nbsp;函数计算数组的交集，用回调函数比较数据。
array_udiff_uassoc()&amp;nbsp;函数返回&amp;nbsp;array1&amp;nbsp;数组中存在但其它数组中都不存在的部分。返回的数组中键名保持不变。
array_udiff_assoc()&amp;nbsp;函数返回&amp;nbsp;array1&amp;nbsp;中存在但其它数组中都不存在的部分。
array_udiff()&amp;nbsp;函数返回一个数组，该数组包括了所有在被比较数组中，但是不在任何其它参数数组中的值，键名保留不变。
array_sum()&amp;nbsp;函数返回数组中所有值的总和。
array_splice()&amp;nbsp;函数与&amp;nbsp;array_slice()&amp;nbsp;函数类似，选择数组中的一系列元素，但不返回，而是删除它们并用其它值代替。
array_slice()&amp;nbsp;函数在数组中根据条件取出一段值，并返回。
array_shift()&amp;nbsp;函数删除数组中的第一个元素，并返回被删除元素的值。
array_search()&amp;nbsp;函数与&amp;nbsp;in_array()&amp;nbsp;一样，在数组中查找一个键值。如果找到了该值，匹配元素的键名会被返回。如果没找到，则返回&amp;nbsp;false。
array_reverse()&amp;nbsp;函数将原数组中的元素顺序翻转，创建新的数组并返回。如果第二个参数指定为&amp;nbsp;true，则元素的键名保持不变，否则键名将丢失。
array_reduce()&amp;nbsp;函数用回调函数迭代地将数组简化为单一的值。如果指定第三个参数，则该参数将被当成是数组中的第一个值来处理，或者如果数组为空的话就作为最终返回值。
array_rand()&amp;nbsp;函数从数组中随机选出一个或多个元素，并返回。
array_push()&amp;nbsp;函数向第一个参数的数组尾部添加一个或多个元素（入栈），然后返回新数组的长度。
array_product()&amp;nbsp;函数计算并返回数组中所有值的乘积。
array_pop()&amp;nbsp;函数删除数组中的最后一个元素。
array_pad()&amp;nbsp;函数向一个数组插入带有指定值的指定数量的元素。
array_multisort()&amp;nbsp;函数对多个数组或多维数组进行排序。
array_merge_recursive()&amp;nbsp;函数与&amp;nbsp;array_merge()&amp;nbsp;函数&amp;nbsp;一样，将一个或多个数组的元素的合并起来，一个数组中的值附加在前一个数组的后面。并返回作为结果的数组。
array_merge()&amp;nbsp;函数把两个或多个数组合并为一个数组。
array_map()&amp;nbsp;函数返回用户自定义函数作用后的数组。回调函数接受的参数数目应该和传递给&amp;nbsp;array_map()&amp;nbsp;函数的数组数目一致。
array_keys()&amp;nbsp;函数返回包含数组中所有键名的一个新数组。
array_key_exists()&amp;nbsp;函数判断某个数组中是否存在指定的&amp;nbsp;key，如果该&amp;nbsp;key&amp;nbsp;存在，则返回&amp;nbsp;true，否则返回&amp;nbsp;false。
array_intersect_ukey()&amp;nbsp;函数用回调函数比较键名来计算数组的交集。
array_intersect_uassoc()&amp;nbsp;函数使用用户自定义的回调函数计算数组的交集，用回调函数比较索引。
array_intersect_key()&amp;nbsp;函数使用键名比较计算数组的交集。
array_intersect_assoc()&amp;nbsp;函数返回两个或多个数组的交集数组。
array_intersect()&amp;nbsp;函数返回两个或多个数组的交集数组。
array_flip()&amp;nbsp;函数返回一个反转后的数组，如果同一值出现了多次，则最后一个键名将作为它的值，所有其他的键名都将丢失。
array_filter()&amp;nbsp;函数用回调函数过滤数组中的元素，如果自定义过滤函数返回&amp;nbsp;true，则被操作的数组的当前值就会被包含在返回的结果数组中，&amp;nbsp;并将结果组成一个新的数组。如果原数组是一个关联数组，键名保持不变。
array_fill()&amp;nbsp;函数用给定的值填充数组，返回的数组有&amp;nbsp;number&amp;nbsp;个元素，值为&amp;nbsp;value。返回的数组使用数字索引，从&amp;nbsp;start&amp;nbsp;位置开始并递增。如果&amp;nbsp;number&amp;nbsp;为&amp;nbsp;0&amp;nbsp;或小于&amp;nbsp;0，就会出错。
array_diff_ukey()&amp;nbsp;返回一个数组，该数组包括了所有出现在&amp;nbsp;array1&amp;nbsp;中但是未出现在任何其它参数数组中的键名的值。注意关联关系保留不变。与&amp;nbsp;array_diff()&amp;nbsp;不同的是，比较是根据键名而不是值来进行的。
array_diff_uassoc()&amp;nbsp;函数使用用户自定义的回调函数&amp;nbsp;(callback)&amp;nbsp;做索引检查来计算两个或多个数组的差集。返回一个数组，该数组包括了在&amp;nbsp;array1&amp;nbsp;中但是不在任何其他参数数组中的值。
array_diff_key()&amp;nbsp;函数返回一个数组，该数组包括了所有在被比较的数组中，但是不在任何其他参数数组中的键。
array_diff_assoc()&amp;nbsp;函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中，但是不在任何其他参数数组中的键和值。
array_diff()&amp;nbsp;函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中，但是不在任何其他参数数组中的键值。
array_count_values()&amp;nbsp;函数用于统计数组中所有值出现的次数。
array_combine()&amp;nbsp;函数通过合并两个数组来创建一个新数组，其中的一个数组是键名，另一个数组的值为键值。
array_chunk()&amp;nbsp;函数把一个数组分割为新的数组块。
array_change_key_case()&amp;nbsp;函数将数组的所有的&amp;nbsp;KEY&amp;nbsp;都转换为大写或小写。
array()&amp;nbsp;创建数组，带有键和值。如果在规定数组时省略了键，则生成一个整数键，这个&amp;nbsp;key&amp;nbsp;从&amp;nbsp;0&amp;nbsp;开始，然后以&amp;nbsp;1&amp;nbsp;进行递增。&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 05 Jun 2020 10:06:56 +0800</pubDate></item></channel></rss><!--49.38 ms , 5 query , 1367kb memory , 0 error-->