cpdsj.wenyuhai.com
Open in
urlscan Pro
120.27.5.13
Public Scan
URL:
https://cpdsj.wenyuhai.com/
Submission: On April 11 via api from US — Scanned from DE
Submission: On April 11 via api from US — Scanned from DE
Form analysis
1 forms found in the DOMPOST https://www.wenyuhai.com/
<form id="search" method="post" action="https://www.wenyuhai.com/" role="search">
<label for="s" class="sr-only">搜索关键字</label>
<input type="text" id="s" name="s" class="text" placeholder="输入关键字搜索">
<button type="submit" class="submit">搜索</button>
</form>
Text Content
闻玉海的博客 9年码农,专注web相关技术栈开发学习、记录 搜索关键字 搜索 首页 网址收藏 关于作者 PHP8.0废弃LIBXML_DISABLE_ENTITY_LOADER函数的处理办法 * 作者: 一指流砂 * 时间: 2023-05-08 * 分类: php * 评论 php从8.0起,废弃了libxml_disable_entity_loader函数,如果想xml转数组的话可以尝试如下代码进行代替: $result = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true); FFMPEG常用命令记录 * 作者: 一指流砂 * 时间: 2022-07-22 * 分类: linux * 评论 因FFMPEG命令不常用,每次用都得查一下,借这个文章记录一下具体命令 * mp4转webp格式: > 参数说明: > -i 输入文件 > -vf scale=750:-1 意思是转换后的大小,宽度为750,高度为-1,即为随比例变化 > -loop 0 循环模式,0为循环,1为不循环 > -r 12 帧数 > -qscale:v 100 画面质量,1-100,100质量最好 > -compression_level 6 有损压缩,压缩级别为3(0-6,默认为4,越高效果越好) ffmpeg -i source.mp4 -vf scale=750:-1 -loop 0 -r 12 -qscale:v 100 -compression_level 6 output.webp 微信公众号调用扫一扫,使扫一扫支持扫PDF417格式的条码 * 作者: 一指流砂 * 时间: 2021-08-05 * 分类: 默认分类 * 评论 这个问题真的是一个很坑的问题,在安卓中可以正常扫描,但到苹果机中,就是扫不出来。后来找了好久的资料,终于搞定了。 我是参考的这篇文章解决的问题:https://blog.csdn.net/kung_com/article/details/89497038 其实是一个很简单的需求,调用微信jssdk的扫一扫接口,来识别二维码的内容进行上传。但是安卓可以,苹果就是死活识别不出来。在这记录一下,也特别感谢上面地址的那位兄台,解决了我一个麻烦。 坑: 微信JSSDK文档中,没有对扫一扫接口做任何多余的解决,十分简单,如下: wx.scanQRCode({ needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果, scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 success: function (res) { var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 } }); 上面的代码,调起微信扫一扫功能之后,苹果机中无法识别PDF417格式的二维码,经过查找资料之后,需要对scanType参数做处理,加上"qrCode"和"barCode"就可以了,效果如下: wx.scanQRCode({ needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果, scanType: ["qrCode","barCode","qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 success: function (res) { var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 } }); 微信文档真的好坑好坑!!! PHP的一套位移加密算法 * 作者: 一指流砂 * 时间: 2021-07-29 * 分类: 算法 * 评论 算法概述 * 加密因子:0xA3 * 加密算法:将待加密的字符串中的每一个字节,分别与加密因子进行异或,然后将异或后的二进制结果进行高低位交换,然后将交换后的结果转换成2进制字符串。所有的字节转换完成后,将最终的结果base64加密。 * 解密算法:其实就是加密算法的反向操作。先将加密字符串base64解密,然后字符串的每一个字节(就是上面转的二进制字符串)转换成二进制,再将二进制高低位交换、异或,最后将二进制转换成字符。 具体代码 /** * 加密算法 */ function encrypt($str, $secret) { // 存放结果字符串 $result = ''; // 加密 for($i = 0; $i < strlen($str); $i++) { // 异或 $xor = ord($str[$i]) ^ hexdec($secret); // 转二进制 $binary = decbin($xor); // 高低位交换 $reverse = implode('', array_reverse(str_split($binary, 4))); // 转换成16进制,如果出现1位的情况,左侧补0 $encodeData = str_pad(base_convert($reverse, 2, 16), 2, '0', STR_PAD_LEFT); // 16进制转二进制字符串 $result .= pack('H*', $encodeData); } return base64_encode($result); } /** * 解密算法 */ function decrypt($str, $secret) { // 存放结果字符串 $result = ''; // 解码base64 $str = base64_decode($str); // 解密 for($i = 0; $i < strlen($str); $i++) { // 二进制字符串转16进制 $hexadecimal = unpack('H*', $str[$i])[1]; // 16进制转2进制 $binary = str_pad(base_convert($hexadecimal, 16, 2), 8, '0', STR_PAD_LEFT); // 高低位交换 $reverse = implode('', array_reverse(str_split($binary, 4))); // 异或 $xor = bindec($reverse) ^ hexdec($secret); // 二进制转字符串 $result .= pack('C', $xor); } return $result; } $result = encrypt('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890~!@#$%^&*()_+-=', 'A3'); $result = decrypt($result, 'A3'); 给LINUX已有的用户增加登陆和SUDO权限 * 作者: 一指流砂 * 时间: 2021-07-28 * 分类: linux * 评论 使用这个需求的背景先介绍一下 我是一个PHP程序员,因为平时开发和部署项目的服务器环境,一直都依赖于宝塔面板。但用户我一直用的都是root,经过一次手滑,在root用户下执行了chmod -R www:www / ,结果可想而知,有这一次事故之后,我决定用宝塔的web用户做开发,也就是www用户,所以记录一下将www用户设置为可以登陆用户的过程。 * 设置用户可以登陆 正常情况下,安装完宝塔之后,如果想用www用户来编辑代码,会这样提示: # su www Cannot execute /sbin/nologin: No such file or directory /sbin/nologin意思就是不允许登陆的shell,现在就需要切换到root用户下编辑 /etc/passwd 文件,找到需要登陆的用户名,如我现在要切换的用户名是www,如下: www:x:1000:1000::/home/www:/sbin/nologin /home/www是用户的默认home目录,/sbin/nologin就是用户的登陆shell,将它改为:/bin/bash就可以了。 * 设置登陆密码 有些情况,www用户需要使用到sudo命令,这时就需要给www用户设置一个密码,切换到root用户,执行下面的命令 # passwd www Enter new UNIX password: Retype new UNIX password: 输入两次密码,密码就设置完成了,但切换到www用户后,又会出现下面的提示: [sudo] password for www: www is not in the sudoers file. This incident will be reported. 解决办法: 先切换到root用户下,给/etc/sudoers文件增加写的权限 chmod u+w /etc/sudoers 然后编辑/etc/sudoers文件 vim /etc/sudoers 找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名) PS:这里说下你可以sudoers添加下面四行中任意一条 youuser ALL=(ALL) ALL %youuser ALL=(ALL) ALL youuser ALL=(ALL) NOPASSWD: ALL %youuser ALL=(ALL) NOPASSWD: ALL 第一行:允许用户youuser执行sudo命令(需要输入密码). 第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码). 第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码. 第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码. 最后撤销sudoers文件写权限,命令: chmod u-w /etc/sudoers 1. 1 2. 2 3. 后一页 » 最新文章 * php8.0废弃libxml_disable_entity_loader函数的处理办法 * ffmpeg常用命令记录 * 微信公众号调用扫一扫,使扫一扫支持扫PDF417格式的条码 * PHP的一套位移加密算法 * 给Linux已有的用户增加登陆和sudo权限 * 记录一个PHP-FPM的PATH_INFO模式配置 * 插入排序 * VIM快捷键、命令及配置整理 最近回复 * Typecho: 欢迎加入 Typecho 大家族 分类 * 默认分类 * 算法 * nginx * linux * 前端 * php 归档 * May 2023 * July 2022 * August 2021 * July 2021 * December 2020 * September 2019 * May 2019 其它 * 登录 * 文章 RSS * 评论 RSS * Typecho © 2023 闻玉海的博客. 由 Typecho 强力驱动. 京ICP备17029690号