[root@localhost ~]# cat /proc/cpuinfo
找到flags部分,如果其中输出有SVM或VMX,表明CPU支持虚拟化技术
[root@localhost ~]# cat /proc/cpuinfo
找到flags部分,如果其中输出有SVM或VMX,表明CPU支持虚拟化技术
php服务端,需要在跨域的地方加这个头:
header( 'Access-Control-Allow-Credentials:true' );
前端请求时需要加这个参数
xhrFields:{
withCredentials: true
},
如:
$.ajax({
url: "B. abc.com " ,
xhrFields:{
withCredentials: true
},
});
首先卸载绝对不是在控制面板里卸载就完事了
在控制面板里卸载完 ,在gitbash里运行 python依然提示3.8.6。
这时候在电脑里搜索 python 也一样找不到python
其实因为安装了pip的缘故,
卸载pip
python -m pip uninstall pip
删除所有python的目录即可
最后想安装自定义高级一点的python 建议下载这个免安装版本
python-3.13.0-embed-amd64
直接把文件目录放到一个文件夹,设置系统环境变量path里面新增一个目录,再添加一条 python名字的变量 指向exe路径,如: D:\Program Files\python-3.13.0-embed-amd64\python.exe
这时候python就是最新定义的版本了
如果直接查询单条数据出来 是会卡爆内存的。所以要在mysql内部分好组。
字段upload_time是日期格式时:
select DATE_FORMAT(upload_time,'%Y%u') weeks,count(SN_ID) count from table_sn group by weeks; -- 按照周分组
select DATE_FORMAT(upload_time,'%Y%m%d') days,count(SN_ID) count from table_sn group by days; -- 按照日分组
select DATE_FORMAT(upload_time,'%Y%m') months,count(SN_ID) count from table_sn group by months; -- 按照月分组
字段upload_time是时间戳数字格式时:
select DATE_FORMAT(FROM_UNIXTIM(upload_time),'%Y%u') weeks,count(SN_ID) count from table_sn group by weeks; -- 按照周分组
select DATE_FORMAT(FROM_UNIXTIM(upload_time),'%Y%m%d') days,count(SN_ID) count from table_sn group by days; -- 按照日分组
select DATE_FORMAT(FROM_UNIXTIM(upload_time),'%Y%m') months,count(SN_ID) count from table_sn group by months; -- 按照月分组
因为内容里可能已经带链接的html
所以需要先将链接的代码暂时隐藏,最后再恢复。
public static function text2link($str='')
{
if ($str == '' || !preg_match('/(http|ftp|www\.|@)/i', $str)) {
return $str;
}
$lines = explode("\n", $str . "\n");
$link = "";
foreach ($lines as $tt => $vv) {
$vv = preg_replace("/([ \r\n\t]|^)www\./i", "\\1http://www.", $vv); //www开头自动加http://
//将现有的链接代码隐藏
$vv = preg_replace_callback("/href=[\"|']((http|https|ftp):\/\/[^ \r\n]+)[\"|']/i", function ($matches) {
return "href=\"[link:". base64_encode($matches[1]) ."]\"";
}, $vv);
$vv = preg_replace("/((http|https|ftp):\/\/[^ \r\n]+)/i", "<a href=\"\\1\" target='_blank'>\\1</a>", $vv);
// $vv = preg_replace("/([-a-z0-9_]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)+))/i", "<a href=\"mailto:\\1\">\\1</a>", $vv);
//链接代码恢复
$vv = preg_replace_callback("/\[link:([^\]]+)\]/i", function ($matches) {
return base64_decode($matches[1]);
}, $vv);
$link .= $vv . "\n";
}
return $link;
}
例子:
$command = 'ffmpeg -y -i ../runtime/cache/'.$TEMP_Gif_path.' -vf "ass=../runtime/cache/'. $CACHE_ASS_PATH.'" ../runtime/cache/'.$timeStr.'.gif';
system($command, $error);
var_dump($error);
tp框架里运行这个指令 不能使用绝对路径,只能使用public下的相对路径,退出一层后 找到cache路径
https://zhuanlan.zhihu.com/p/359984466
这是一份VS Code轻量级PHP开发环境
配置方案,通过在VS Code中安装PHP开发相关插件,实现代码格式化、自动补全代码、类方法定位、php调试、预览与历史版本找回扥功能以满足良好的php开发环境。
在使用该方案前,提前配置好PHP运行环境,php版本至少7以上,当前方案版本8。
预先配置php.exe可执行文件
在软件左下角 齿轮-> setting 搜索 php,edit in setting
输入php的俩路径
{
"php.validate.executablePath": "E:/php/env/php-8.0.3/php.exe",
"php.executablePath": "E:/php/env/php-8.0.3/php.exe"
}
实现代码格式化、提示、补全、类方法定位等
(1. 装PHP Intelephense智能感知插件
在软件左侧的图标里找到第5个:插件 。
搜索:PHP Intelephense
点击安装。
(2. 配置PHP Intelephense
还是软件左下角的 齿轮 设置:搜索 PHP Intelephense
把需要的 edit in setting 都点一遍。保存即可。
重新打开项目的代码,发现可以使用鼠标点击函数 类的方法跳转了。
之前下载的两个
Setup_MakeMKV_v1.17.7.exe
VidCoder-7.15-Portable.exe
提取出来的视频都带有波浪波纹,转mp4之后就表现出来了。
格式工厂也提取不了。
还是推荐:HandBrake
全名:HandBrake-1.3.2-x86_64-Win_GUI.exe
https://blog.csdn.net/qq_39232387/article/details/107337189
需要手动创建一个一样的内容
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
.scrollCon {
width: 500px;
height: 150px;
overflow: hidden;
}
ul,li {
margin: 0;
list-style: none;
}
li {
height: 40px;
}
</style>
</head>
<body>
<div class="scrollCon" id="scrollCon">
<ul id="scrollCon1">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
</ul>
<ul id="scrollCon2">
</ul>
</div>
<script type="text/javascript">
var conScroll = function(){
var scrollCon = document.getElementById("scrollCon");
var li = scrollCon.getElementsByTagName("li");
var scrollCon1 = document.getElementById("scrollCon1");
var scrollCon2 = document.getElementById("scrollCon2");
if(li.length > 3){
scrollCon2.innerHTML = scrollCon1.innerHTML;
scrollCon.scrollTop = 0;
function rollStart(){
if(scrollCon.scrollTop >= scrollCon1.scrollHeight){
scrollCon.scrollTop = 0;
}else{
scrollCon.scrollTop++;
}
}
var timer = setInterval(rollStart, 50);
scrollCon.onmouseover = function(){
clearInterval(timer);
}
scrollCon.onmouseout = function(){
timer = setInterval(rollStart, 50);
}
}
};
conScroll();
</script>
</body>
</html>
以上demo其实并不完美,调试发现:
两个滚动的容器必须设置高度,而且最终结果发现滚动到一半就无法继续移动。
在纯demo里是没问题,但在使用场景里却不兼容。
故改成以下demo,用css的transform实现移动更加流畅
var conScroll = function(){
var mouseObj = parentBoxNode;
var moveObj = moveBox1Node;
var secondObj = moveBox2Node;
moveObj.style.transform = 'translateY(0px)';
var currentTop = 0;
function rollStart(){
if(Math.abs(currentTop) >= 262){
currentTop = 0;
moveObj.style.transform = 'translateY(0px)';
secondObj.style.transform = 'translateY(0px)';
} else {
currentTop --;
moveObj.style.transform = 'translateY(' + currentTop + 'px)';
secondObj.style.transform = 'translateY(' + currentTop + 'px)';
}
}
var timer = setInterval(rollStart, 50);
mouseObj.onmouseover = function(){
clearInterval(timer);
}
mouseObj.onmouseout = function(){
timer = setInterval(rollStart, 50);
}
};
conScroll();
吐槽一下 今天的破解版本又被和谐了,于是找了一个新的破解版本,升级到2024.2版发现文件的面包屑跑到底部了,自己研究一下发现了方法:
在底部右键: navigation bar -> top
即可。