什么是Sitemap/网站地图
这是一种方便搜索引擎蜘蛛爬取整个网站的列表,并且还可以提供有关网站的其他信息,如上次更新日期、Sitemap文件的更新频率等,供搜索引擎参考。
搜索引擎一般支持以下3种形式的Sitemap:
- xml格式
- 文本格式
- Sitemap索引文件
当然搜索引擎也支持读取网站RSS或手动提交,但相比与Sitemap提交来讲还是有些不足之处。
xml格式
<!-- XML文件需以utf-8编码-->
<?xml version="1.0" encoding="utf-8"?>
<!--必填标签-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<!--必填标签,这是具体某一个链接的定义入口,每一条数据都要用<url>和</url>包含在里面,这是必须的 -->
<url>
<!--必填,URL链接地址,长度不得超过256字节-->
<loc>http://www.example.com/yoursite.html</loc>
<!--可省略,指定该链接的最后更新时间-->
<lastmod>2020-10-17T15:43:00+08:00</lastmod>
<!--可省略,指定页面更新频率,常用参数:always,hourly,daily,weekly,monthly,yearly,never -->
<changefreq>daily</changefreq>
<!--可省略,指定此链接相对于其他链接的优先权比值,取值范围0.0-1.0之间-->
<priority>0.8</priority>
</url>
<url>
<loc>http://www.example.com/yoursite2.html</loc>
<lastmod>2020-10-17</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</urlset>
NextCloud安装时使用MySQL报错。报错日志如下:

错误:
An exception occurred while executing 'SELECT `uid`, `displayname` FROM `oc_users` WHERE `uid_lower` = ?' with params ["admin"]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'nextcloud.oc_users' doesn't exist
起初觉得可能是因为binlog_format
设置问题,修改之后发现问题并没有解决。
尝试使用内置的SQLite安装。

去官方社区逛了一圈发现。。。

Error:
- Nextcloud Server does not support Microsoft Windows. We recommend usinga virtual machine or docker image on Windows Server.
- Nextcloud服务器并不能支持在 Microsoft Windows 上运行。我们建议在 Windows Server 上使用虚拟机或 docker 映像
info: PS:我真蠢...
PHP获取文件后缀名(扩展名)的7种方法。
字符串截取

$file_name = 'a.b.c.png';
echo strrchr($file_name, '.');
info:使用
strrchr()
函数找到字符 .
在字符串中最后出现的位置,并返回从该位置到字符串结尾的所有字符。
$file_name = 'a.b.c.png';
echo substr($file_name, strrpos($file_name, '.'));
info:使用
strrpos()
函数找到字符 .
在字符串中最后一次出现的位置,然后使用 substr()
函数从该位置开始截取字符串。数组分割

$file_name = 'a.b.c.png';
$arr=explode('.', $file_name);
echo $arr[count($arr)-1];
info:使用
explode()
函数分割字符串到数组,然后返回数组的最后一个元素。
$file_name = 'a.b.c.png';
$arr=explode('.', $file_name);
echo end($arr);
info:基本同上,这里使用
end()
函数返回数组的最后一个元素。
$file_name = 'a.b.c.png';
echo strrev(explode('.', strrev($file_name))[0]);
info:
strrev()
函数,反转字符串。这里先反转文件名字符串,然后使用 .
分割字符串并返回数组的第一个元素,最后再次反转。warning:PS:个人感觉整个有一点简单问题复杂化。好处就是,不用判断数组长度了。
使用路径函数

$file_name = 'a.b.c.png';
echo pathinfo($file_name)['extension'];
info:
pathinfo()
函数以数组的形式返回文件路径的信息。//`pathinfo()` 函数返回的数组包括以下的数组元素:
Array
(
[dirname] // 文件路径 “.”
[basename] // 文件名 “a.b.c.png”
[extension] // 文件扩展名 “png”
)

$file_name = 'a.b.c.png';
echo pathinfo($file_name, PATHINFO_EXTENSION);
info:
基本同上。
基本同上。
可选的参数。规定要返回的数组元素。默认是 all。
- PATHINFO_DIRNAME - 只返回 dirname
- PATHINFO_BASENAME - 只返回 basename
- PATHINFO_EXTENSION - 只返回 extension
部分内容参考 https://www.php.cn/php-weizijiaocheng-392130.html