灌水区
-
PHP flock 文件锁处理并发
利用 PHP flock 文件锁处理并发 利用flock()函数对文件进行加锁(排它锁),实现并发按序进行。 flock(file,lock,block)有三个参数。 file 必需。规定要锁定或释放的已打开的文件。 lock 必需。规定要使用哪种锁定类型。可能的值: LOCK_SH - 共享锁定(读取的程序)。允许其他进程访问该文件。 LOCK_EX - 独占锁定(写入的程序)。防止其他进程访问… -
Crontab 定时任务设置
注意每个 * 必须有一个空格 * * * * *command 分 时 日 月 周 命令 第1列表示分钟1~59 每分钟用*或者 */1表示 第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列表示月份1~12 第5列标识号星期0~6(0表示星期天) 第6列要运行的命令 定时任务没有启动的排查 1、先手动执行定时任务以此来判断脚本是否有问题。 2、确认服务… -
如何查询数据库重复数据
如何查询数据库重复的用户数据 利用group by + havaing语句快速查询数据表中的重复数据 需要这种情况其实很常见。 比如用户注册时候出现并发,网络卡顿情况下用户连续点了两次登录 这时就会产生一下重复的数据,除了在程序上面做限制之外还需要对之前未处理产生的数据进行清理 这时就该 group by + havaing 上场了 数据表结构 CREATE TABLE `user` ( `id`… -
wordpress B2主题 PHP默认时区无效
B2 主题的健康状态检查提示PHP默认时区无效 1个关键问题 PHP默认时区无效 PHP的默认时区在WordPress载入后被 date_default_timezone_set() 函数调用修改,这可能会影响日期和时间的正确计算。 看到不少B2用户反馈这个找不到,今天在比克日志记录解决方法, 拯救一下强迫症患者 这个提示是由于b2的函数库functions.php里面重复设置了时区,问题不大 … -
PHP 精确运算函数bcadd,bcsub,bcmul,bcdiv
php 在使用加减乘除等运算符计算的时候会把未定义类型的操作数转成浮点数然后进行算术运算 有句话说的好,永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数 浮点数运算示例 $a = '49'; $v = '48.98'; echo $a - $v; 正常来讲这里应该返回 0.2 吧,可实… -
crmeb Pro 接入IPYY、云极短信
一、代码更新 1、调用位置更新 \app\services\message\sms\SmsSendServices.php 文件内容,根据选择的接口切换注释的内容。 2、更新函数库 注意:更新函数库的代码需要重启 swoole 才会生效 \app\common.php 最底部新增以下代码, 代码包含ipyy,云极短信的接口调用方式 二、导入数据库 1、导入配置栏目,方便配置参数。【必须导入】 2、… -
PHP常用代码片段
PHP常用代码片段 获取客户端IP地址 /** * @Author xiadmin * 获取客户端IP地址 * @param int $type 返回类型 0 返回IP地址 1 返回IPV4地址数字 * @param bool $adv 是否进行高级模式获取(有可能被伪装) * @return mixed */ function get_client_ip($type = 0, $adv = fa… -
定时任务不切换用户执行的后果
事故背景 某 thinkphp6.x 项目运行时,偶尔出现异步队列执行失败的情况,实际调试时发现一切正常,但是异步队列就是会经常出现失败超时 调试来调试去,就是没有问题,怀疑执行的进程太多,抢占了任务??【为了加快速度,开了五个进程】,后面调试减少到一个进程,好像好了很多【心理安慰+999】 就这样相安无事了好几天,这个问题又出现!!! 再因为这个任务是支付确认的异步队列,要是订单没有办法确认的话… -
解决跨域 No Access-Control-Allow-Origin
在A网站中,我们希望使用Ajax来获得B网站中的特定内容。如果A网站与B网站不在同一个域中,那么就出现了跨域访问问题。你可以理解为两个域名之间不能跨过域名来发送请求或者请求数据,否则就是不安全的。跨域访问违反了同源策略, 同源策略规定,浏览器的ajax只能访问跟它的HTML页面同源(相同域名或IP)的资源。 如何确定是跨域请求 A域名资源请求到B/C……域名 你当前访问的域名是http的当请求的部… -
宝塔 php7.2 安装 mcrypt
一、先安装libmcrypt wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz tar -zxvf libmcrypt-2.5.7.tar.gz cd libmcrypt-2.5.7 ./configure make make install 二、安装mcrypt扩… -
经历社会的毒打
由于大家初步达成了项目解除合同的意愿。在清迈的时候,甲方对接人也去了,然后她找了我的合伙人在聊关于项目结束的事情,并且与我的合伙人好像好朋友一样在聊天套近乎,殊不知我的合伙人已经被利用了。 解除合约当天,我体会到了社会的险恶 这项目解除合约本来可以很简单,双方签完解约合同,我们这边把最后一期未使用的营销服务费用退还给甲方,这事情就结束了。 前面也和大家说过,这个款是分阶段支付的,只有这个阶段的交付… -
Linux 将mysql 、php 添加到环境变量
Linux 刚装好phpstudy 之后 还无法直接使用 mysql -uroot -p 登录,因为现在环境变量里面还没有mysql echo $PATH 查看当前系统变量 so 找到mysql 安装目录 /phpstudy/mysql/bin (我的是phpstudy) 输入命令: export PATH=$PATH: /phpstudy/mysql/bin 输入之后就可以使用 mysq…