php
可以吧可以吧
可以吧
展开
-
Php Jenkins phpunit配置
jenkins 自动化单元测试持续集成php Phpunit 构建流水线示例配置,这里是winwods配置示例原创 2023-07-07 14:04:16 · 1119 阅读 · 0 评论 -
PHP redis Sorted Set 实现字符串去重
以上代码中,首先使用 zIncrBy() 方法将每个字符串作为 Sorted Set 的 member 值,Score 值为 1,并在遇到重复的字符串时将其对应的 Score 值加 1。在上面的代码中,我们首先创建了一个名为my_set的Redis Sorted Set,并设置了一些元素。遍历完所有的字符串后,只保留 Score 值大于等于 2 的字符串即可,因为它们出现了 2 次或更多次,而 Score 值为 1 的字符串只出现了一次。每当遇到相同的字符串时,就将该字符串对应的 Score 值加 1。原创 2023-05-12 14:21:20 · 716 阅读 · 0 评论 -
kafka优化配置,Kafka 的消费者客户端详解
前面讲解了 Kafka 的生产者,而与生产对应的就是消费者,程序中可以通过 KafkaConsumer 来订阅主题,并从订阅的主题中拉取消息。而 Kafka 中消费者比生产者多了个组的概念,也称消费者组,从而提升单机的消费速度。本文将介绍下消费者与消费者组的概念,然后再对客户端开发进行详细讲解。对于 Kafka 的分区来说,它的每条消息都有唯一的偏移量,用来展示消息在分区中对应的位置,它是一个单调递增的整数。原创 2022-11-28 16:45:34 · 3282 阅读 · 0 评论 -
magento 开发记录
magento文档地址:https://doc.magentochina.org/guides/v2.3/config-guide/cli/config-cli.html\ https://devdocs.magento.com/mftf/docs/merging.html先注册账户 开通开发者 获取密钥 composer git 安装问题解决ext-intl * is missingextension=intl如果提示ext-soap * is missing,也按...原创 2020-05-19 11:19:56 · 261 阅读 · 0 评论 -
phpexcel,excel导入导出封装类
安装包composer require phpoffice/phpexcel导出,分步走文件名/header/内容写入class OfficeExcel{ public $obj; public $k = 2; public function __construct($author='',$title='',$theme='',$remark='') { $objPHPExcel = new PHPExcel(); //实例化 //基本设置 .原创 2020-07-30 16:44:24 · 403 阅读 · 0 评论 -
七牛云配置遇到的一些问题
七牛云配置配置设置公共空间和域名访问(测试域名一个月收回)CDN地址:点击文件下载链接填上 http://地址url/ 记得带上反斜杠CNAME 一定要写七牛云里面的基本信息生成的那个填写到你的域名解析里面 选择CNAME测试:看看域名是否能ping通 找到文件右键复制访问链接访问测试配置域名访问 好像两次不成功都是英文域名过段 比如我的域名是 ypy.com我配置了c...原创 2020-04-27 15:24:29 · 1098 阅读 · 0 评论 -
fastadmin无法上传视频和文件上传到七牛的操作
在fastadmin的文档中,数据库和组件–》文件上传部分介绍了文件和图片的上传,但是实际操作之后发现字段后缀改成file,文件大小限制修改之后,依然不能进行视频上传,始终报错文件格式受限制的问题,这里记录一下解决方法1.首先找到你的html文件,在生成的源代码上添加2个属性data-mimetype和data-maxsize,这2个属性文档中有介绍<div class="form...原创 2020-04-30 17:38:54 · 1893 阅读 · 0 评论 -
php zookeeper实现分布式锁
如果节点被使用完删除了,zookeeper要向所有监听者发送通知,这会阻塞其他操作,并且会导致所有客户端来争抢锁,这种情况称为“羊群效应”,试想一下,如果监听者众多的话,会拖累性能。4、如果不是,获取到list中你的上一个节点名称(不一定是-1的那一个,因为此时它对应的客户端有可能主动放弃了),对其实施监听操作get/mylock/lock-xxxxxwatch如果get监听失败了,说明节点已经别清除了,重复2,3直到监听成功或者获取锁,如果监听成功,就在这里阻塞,等待通知;............原创 2022-07-20 17:07:47 · 231 阅读 · 0 评论 -
docker 编辑Dockerfile 添加php7.2 acpu
直接编辑DockerfileARG INSTALL_APCU=falseRUN if [ ${INSTALL_APCU} = true ]; then \ # Install Php apcu Extension apk add apcu \ && pecl install https://pecl.php.net/get/apcu-5.1.13.tgz apcu.tgz \ && docker-php-ext-enable apcu原创 2022-01-05 16:55:27 · 773 阅读 · 1 评论 -
windows10 docker 启动报错exec: “docker-compose-v1.exe“: executable file not found in %PATH%Current PATH
使用git自带命令提示exec: "docker-compose-v1.exe": executable file not found in %PATH%Current PATH使用cmd就好了原创 2022-01-04 11:19:16 · 1350 阅读 · 0 评论 -
php 如何优雅的获取静态常量配置
有时候自己定义了一堆常量,比如枚举值的时候class Model_Info extends Model_Base{const $USER =1;const $DRIVER =2;const $ENTERPRISE =3;//调用Model_Info::DRIVER => 'XB_SJ',Model_Info::USER => 'BD_YH',Model_Info::ENTERPRISE => 'BJ_QY',//静态常量调用配置中心原创 2021-12-25 22:48:42 · 510 阅读 · 1 评论 -
php计算时间差时分秒
/** * 想求两个时间间隔的小时数就用:$c/(60*60) * PHP 计算两个时间戳之间相差的时间 时分秒 * 功能:计算两个时间戳之间相差的日时分秒 * $begin_time 开始时间戳 * $end_time 结束时间戳 */ public function diff($begin_time,$end_time) { if($begin_time < $end_time){ ...原创 2021-12-13 17:26:44 · 1539 阅读 · 0 评论 -
如何解决php curl curl_errno返回6 无法解析主机
php curl error:php curl error code_大海技术博客-CSDN博客有些时候发下浏览器可以访问的get接口,postman却返回false,打印error code后返回数值,可以参考上面的errror code值找到对应的值处理首先直接ping一下,比如如果你的接口是get的#pingcurl "http://www.baidu.com.cn/api/getDriverInfo/?arg=%7B%22driver_id%22%3A8008%7D"发下ping原创 2021-10-28 19:28:09 · 4003 阅读 · 2 评论 -
php curl error code
php 请求部分 @Reporter::httpStart($url,[],$trace_headers); $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, $trace_headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, false); curl_setopt($curl, CURLOPT_TIME原创 2021-10-28 19:12:26 · 1776 阅读 · 0 评论 -
PHP Warning: proc_open(): fork failed - Cannot allocate memory in phar:///usr/bin/composer/vendor/s
使用 Laravel , composer 时出现以上错误 ,解决办法:/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024/sbin/mkswap /var/swap.1/sbin/swapon /var/swap.17原创 2021-10-25 14:42:12 · 241 阅读 · 0 评论 -
php 二维数组key初始化从0开始
这个是一个二维数组array(2) {[1]=> array(2) { ["sourcesid"]=> int(1) ["addusernum"]=> string(1) "4" } [6]=> array(2) { ["sourcesid"]=> int(6) ["addusernum"]=> int(92) }}直接使用$item=array_merge..原创 2021-09-23 15:10:23 · 1036 阅读 · 0 评论 -
zend_mm_heap corrupted 使用opcache出状况
生产问题一直有,看起来像是内存满了,导致无法请求翻了一圈说是opcache的问题那就试试把他禁用吧,在php.ini中修改配置并重启cat php.ini | grep "opcache"opcache.enable=0原创 2021-06-01 00:42:54 · 682 阅读 · 0 评论 -
搞个php面试算法集
搞个php面试算法集,慢慢丰富起来码云地址:https://gitee.com/meiyuanwangkai_admin/algorithm原创 2021-05-27 18:03:55 · 77 阅读 · 0 评论 -
postman 遇到坑了post无法请求
我有一个项目不知道自己手贱设置了什么东西,可以获取到get参数,但是post参数无法获取解决:新增一个collection,在新建一个接口,就解决了,估计是针对整个项目设置了个公共的harder头,没清理掉,重新新建就可以了,吐了...原创 2021-05-11 16:28:36 · 4852 阅读 · 1 评论 -
上传文件超过1M,报跨域错误
文章目录上传文件超过1M,报跨域错误问题现象:定位过程:解决方案:上传文件超过1M,报跨域错误问题现象:今天在和前端同事调试商品管理功能时候,给商品上传图片不能正常上传。抛出:Access to XMLHttpRequest at 'https://xxx/manageapi/file/upload' from origin 'http://xxx:18080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin原创 2021-04-20 17:10:53 · 3046 阅读 · 2 评论 -
phpexcel的大量数据导出[内存溢出测试验证]
PHPExcel导出文件会耗费大量资源,我采用默认的配置导出excel用中需要注意,PHPExcel的内存优化参数并不在PHPExcel对象中,需要在PHPExcel实例化之前设置。$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp;$cacheSettings = array('memoryCacheSize'=>'2048MB');PHPExcel_Settings::setCacheStor.原创 2021-03-26 15:36:02 · 607 阅读 · 0 评论 -
php aws 文件上传设置content_type
在上传方法里面配置ContentType即可 $result = $this->client->putObject([ 'Bucket' => $this->bucket, //桶 'Key' => trim($key), //可以 'Body' => fopen($fileUrl, 'rb'),//文件资源 'ACL原创 2021-03-22 20:21:47 · 600 阅读 · 1 评论 -
日志处理[逐行处理并截取数据后二次指定字符串截取写入新文件]
逐行处理并截取数据后二次指定字符串截取写入新文件<?php/** * 逐行处理并截取数据后二次指定字符串截取写入新文件 */class FileProcess{ /** * FileProcess constructor. * @param $path 文件路径 * @param $newPath 生成的日志文件路径 * @param $subOneNum 第一次行处理并截取的长度 * @param $subOneNum 第一原创 2021-03-20 11:44:51 · 233 阅读 · 0 评论 -
图片上传封装
图片上传封装<?php/** * 上传图片 * */class ImageFile{ public static function uploadImageFile($savePath, $key = 'files', $allowExt = [], $maxSizeM = 10) { $return = ['ret' => 0, 'msg' => 'success']; try { if (!$原创 2021-03-19 11:49:56 · 211 阅读 · 0 评论 -
aws 文件公网直接访问
前几天接到一个需求,需要图片上传aws后可以直接公网访问,aws文件上传默认是不能直接访问,需要签名,这就不符合我们的场景,因为另外几个服务不想更新,只想读取图片路径其实也就是在配置aws储存的时候记得开放公网访问即可这一步不是我配置的,我们运维负责的,所以我也不知道怎么搞,所以直接在网上拿图吧记得配置,不配置怎么玩都不行编辑{ "Version": "2012-10-17", "Id": "S3PolicyId1", "Statement": [原创 2021-03-19 11:35:02 · 1656 阅读 · 0 评论 -
逐行处理并截取数据写入新文件
逐行处理并截取数据写入新文件<?php/** * 逐行处理并截取数据写入新文件 */ini_set('max_execution_time', '0');$file = fopen("rabbit@hpayrabbitmq01.log.tar", "r") or exit("Unable to open file!");$startTime = microtime(true);while(!feof($file)){ $line = fgets($file); $原创 2021-03-03 17:24:56 · 204 阅读 · 1 评论 -
php-fpm 进程异常断开[记一次线上问题处理]
最近遇到一个线上问题,先说说大概背景,代码是分布式的,多个域请求跳转,涉及近十张表左右的数据更新和写入,用到nosql有redis和rabbitmq,流程比较长,总结一下这种情况下如何去找到错误1.当然首先需要通过日志查到问题点,定位到哪个域哪个接口出的问题,先看看代码逻辑是否有问题2.发现这个问题是偶现的,同样的数据量下也不一定会出现3.开始查看php-fpm 慢日志,如果发现有可以拿出去分析下在哪里停掉了request_slowlog_timeout = 2slowlog = /ho原创 2021-03-03 16:23:49 · 552 阅读 · 1 评论 -
php大数除法保留精度问题
php大数除法,要求保留精度的问题,发现普通的方法都不能保存精度,最后找了一下资料发现可以这样是不是翻车过?原创 2021-01-25 18:56:56 · 302 阅读 · 0 评论 -
mq 队列项目中一些实践场景
工作中经常使用到定时任务批量更新数据库某表字段状态的情况,原先扫定时任务从一分钟扫一次db,虽然mysql有进程池,但是被大量的业务冲击下,当你脚本启动比较多的情况下,会造成大量的连接.经常还差出现mysql 抛出异常2006的情况.如果线上存在大量的业务拖垮了你的db服务那就是一个很糟糕的实践了.思路,让脚本扫db改为扫redis或者rabbitmq kafuka1.使用redis的队列,lPush RPush2.使用rabbitmq 进行ack消费 绑定单独的交换机和队列 使用重入队列机制.原创 2020-10-26 17:43:42 · 206 阅读 · 0 评论 -
php 数组一维按key拆分和替换二维数组的key
/* * a 需要处理的数组 * keywords 被替换的文字 */function subOrderSearch($a,$keywords) { $arr=$result=array(); foreach ($a as $key => $value) { if(strstr($key, $keywords) !== false) { array_push($arr, $valu.原创 2020-10-01 12:25:00 · 797 阅读 · 0 评论 -
php低版本的条形码如何生成mpdf.6.0.1
遇到一个不支持命名空间的项目 要生成条形码 当然还是用mpdf文件下载地址:代码function barcode($order_id, $shipping_sn){ // Including all required classes // Loading Font $font = new BCGFontFile('../sysadm/includes/barcodegen/font/Arial.ttf', 16); // Don't forget to san原创 2020-09-14 17:27:01 · 406 阅读 · 0 评论 -
wampserver配置域名(php 开发环境)
为啥选择wampserver呢,个人喜好,phpstudy以前也用过,自从改版后没用过,前段时间下载个最新版的来玩竟然一个普通php页面修改一个参数刷新竟然要等很久才会,不知道为啥,我问过作者也没回音,说让我重装,重装过了,也是没效果,后面就放弃了,这里不是黑他哈,毕竟我两台电脑都会有这个坑,就不是小问题了,缓存啥的我都关了情节引入:我们在调试PHP项目时,都是在浏览器的地址栏通过http://localhost/127.0.0.1+目录的方式来运行PHP项目的;但是当我们在同一个站点根目录下拥有多原创 2020-07-17 14:30:57 · 617 阅读 · 0 评论 -
php实现远程网络文件下载到服务器指定目录
代码如下/** * @param $url 下载地址 * @param string $publicDir 文件存放地址 * @param string $filename 文件名称 * @param int $type * @return array|bool */public function getDownload($url, $publicDir = '', $fileName = '', $type = 0) { //获取文件路径 $newOneDir = s原创 2020-06-23 10:05:17 · 960 阅读 · 0 评论 -
php 拆分含有多个分隔符的字符串
一、需求拆分含有多个分隔符(中英文分号、逗号和空格)的字符串,分隔字符串为数组;二、实现1、方法一 explode()先将分隔符替换为同一分隔符,再使用explode进行拆分;str_replace()支持多个分隔符替换,多个分隔符放置在数组中替换;$arr = explode(',',str_replace(array('_','/'),',',"asia/hong/kong"));explode()不支持多个分隔符拆分,借助str_replace将分隔符替换为同...原创 2020-06-16 23:23:02 · 1444 阅读 · 0 评论 -
php接入was s3相关问题记录
php aws s3的官方文档:https://docs.aws.amazon.com/zh_cn/sdk-for-php/v3/developer-guide/getting-started_installation.htmlcomposer安装包:composer require aws/aws-sdk-php这里遇到的问题点:1.php版本为5.6,如果想使用php sdk 3x 你会发现包导入冲突,说是支持大于php5.5的版本,实际不行解决:选择低版本的包:博主选择的是 .原创 2020-06-12 15:30:46 · 530 阅读 · 0 评论 -
php 单例数据库
代码<?phpheader("content-type:text/html;charset=utf-8");final class DB{ private $charset = "utf8"; private $link = NULL; private static $instance = NULL; //初始化 private function __construct($hostfield, $userfield, $password, $da原创 2020-06-01 12:41:28 · 226 阅读 · 0 评论 -
postman多环境配置token自动登录配置
postman是一个非常实用的工具,今日来介绍下他的postman多环境配置token自动登录配置首先还是先来了解一下postman多工作平台模式创建工作台test注意:多工作台模式 一个工作台对应一个项目配置多环境比如我的分本地 测试 生产环境填写好变量,我这里使用test不作为变量,填写好对应环境的域名创建一个请求,选择一个环境,接口...原创 2020-03-17 14:43:24 · 818 阅读 · 0 评论 -
laravel 中的定时任务不执行(出现用户权限不够导致失败问题解决 )
>注意:以php-cli模式运行的任务,运行定时任务的用户必须和运行php-fpm进程的用户保持一致。>假设运行php-fpm的用户是 ***www***,则需要把这些定时任务放到 ***www*** 用户的crontab list中>注意:以***www***用户运行crontab时,要确保有/home/www家目录crontab的日志目录在 /var/log/cron ...原创 2020-03-11 15:25:38 · 1963 阅读 · 0 评论 -
简单的日志方法按天写入或指定文件写入
【代码】简单的日志方法按天写入或指定文件写入。原创 2019-12-24 17:20:58 · 355 阅读 · 0 评论 -
将laravel 请求参数 herder 路径 相应参数一网打尽
参考自:https://58hualong.cn/blog/post/laravel-shiyong-terminate-jilu-api-de-xiangying-shijian-qingqiu-canshu-he-xiangyingzhiLaravel 的中间件有一个叫做terminate的方法,如果我们实现了该方法,那么在 Laravel 整个生命周期执行快要结束的时候,Larave...原创 2019-12-10 15:46:33 · 279 阅读 · 0 评论