
PHP
葫芦小金刚_
明明可以靠脸吃饭,却偏要靠代码
展开
-
Overloading of string functions using mbstring.func_overload is not supported by phpseclib.
初学rabbitMQ引入文件后出现这个问题原因出在mbstring.func_overload我的是PHP环境是7.3,默认是2(重载所有字符串函数)解决办法在php.ini中把他(mbstring.func_overload)注释掉然后重启php-fpm原创 2020-06-19 10:46:02 · 324 阅读 · 0 评论 -
PHP 简易进度条
/** * 递减进度条 * @param int $currentCount 当前长度 * @return string */function descProgressBar($currentCount){ static $totalNum = null; if (!$totalNum) $totalNum = $currentCount; ...原创 2020-01-03 22:58:49 · 279 阅读 · 0 评论 -
PHP AES/CBC/ZreoPadding 128位
对接第三方数据遇到的加密方式代码://$data 是要加密的xml数据$source = trim($data);$pad = 16 - (strlen($source) % 16);if ($pad <= 16) { $source .= pack("a{$pad}", "");}$encryptStr = openssl_encrypt($so...原创 2019-12-23 10:16:34 · 1037 阅读 · 0 评论 -
postman报错Could not get any response 但是浏览器可以访问
包括用PHP发送curl请求也发送不了把报错信息翻译成中文没有得到任何回应有一个错误连接到http://118.xxx.xxx.10:11134/api-customer/terminal/user/information。原因:服务器无法发送响应:确保后端正常工作自签名SSL证书被阻塞:通过在设置> General中关闭“SSL证书验证”来修复这个问题代理配...原创 2019-12-13 02:07:03 · 1337 阅读 · 0 评论 -
laravel 项目部署到服务器上不报错
在nginx配置文件中加上以下代码然后平滑启动nginx服务就好了fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_script_name;...原创 2019-12-02 15:22:53 · 507 阅读 · 0 评论 -
laravel Validate验证失败后跳转到首页的问题
都是这个方法惹的祸,在基类中重写这个方法就行了在baseController中加入以下代码就ojbk了/** * 统一返回数据格式 * @param $data * @return false|string */ protected function json($data){ header('Content-type...原创 2019-12-01 16:35:38 · 1674 阅读 · 0 评论 -
CI上传文件到阿里云OSS
用composer在项目根目录执行以下命令下载sdkcomposer require aliyuncs/oss-sdk-php根据个人爱好放在自己喜欢的目录中 (我放在了application下)到CI框架的config.php 中修改下面这个参数使vendor文件夹自动加载(如果你上一步存放的路径和我是一样的就改成true即可,否则就改成自己的路径)接下来就是代...原创 2019-04-09 17:42:15 · 1080 阅读 · 0 评论 -
PHP queryList采集数据
首先通过composer安装querylistcomposer require jaeger/querylist然后是一个调用小示例:require 'vendor/autoload.php';use QL\QueryList;$url = '地址自行更改'; $rules = array( 'title' => ...原创 2019-04-18 16:42:33 · 554 阅读 · 0 评论 -
PHP 微信支付
<?phpnamespace app\app\model;use think\Model;/** * 微信支付服务器端下单 * @author yc <yincaox@gmail.com> * 微信APP支付文档地址: https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_6 * 使用示例 * $...原创 2019-04-25 18:03:03 · 400 阅读 · 0 评论 -
PHP 一维索引数组根据值去除重复
题目:PHP解答: /** * 给索引数组的值去重 * @param $arr 索引数组 * @return array 被去掉的值 */ public function removeRepeat(&$arr){ $remove_data = []; $len = 0; fore...原创 2019-06-19 09:52:09 · 883 阅读 · 0 评论 -
PHP 二维数组去重
/** * 二维数组去重 * @param $array 要去重的数组 * @param $field 要去重的key * @return array 去重后的结果 */ function remove_duplicate($array , $field) { if (empty($array)) return $...原创 2019-06-19 17:00:06 · 153 阅读 · 0 评论 -
PHP 买卖股票的最佳时机
题目:PHP答案:public function stockProfits($arr){ //利润起始默认值 $res = ['profits' => 0]; foreach ($arr as $key => $value){ if (isset($arr[$key+1]) && ...原创 2019-06-19 19:01:55 · 291 阅读 · 0 评论 -
PHP 旋转数组
题目:答案:public function rotateArray(&$arr , $k){ $i = 0; $coun = count($arr); if($coun < $k){ $k = $k % $coun; if ($k == 0){ ...原创 2019-06-21 09:26:04 · 284 阅读 · 0 评论 -
PHP Workerman WEB端消息推送demo
去官网下载Workerman代码下载完之后上传到服务器上并解压创建服务端代码<?phpuse Workerman\Lib\Timer;use Workerman\Worker;require_once '../Workerman/Autoloader.php';// 心跳间隔55秒define('HEARTBEAT_TIME', 55);// 初始化一个w...原创 2019-06-21 10:28:45 · 1075 阅读 · 0 评论 -
PHP 存在重复
题目:解答:public function checkRepeat($arr){ $len = 0; foreach ($arr as $key => $value){ foreach ($arr as $k => $v){ if ($arr[$key] == $arr[$k]){ ...原创 2019-06-21 17:40:21 · 230 阅读 · 0 评论 -
垃圾分类详解大纲
生活垃圾一般可分为四大类:可回收垃圾、厨余垃圾、有害垃圾和其他垃圾。可回收垃圾:有废纸、塑料、玻璃、金属和布料五大类。厨余垃圾:剩菜剩饭、骨头、菜根菜叶、果皮等食品类废物,有害垃圾:包含电池、荧光灯管、灯泡、水银温度计、油漆桶、部分家电、过期药品、过期化妆品等。含有对人体健康有害的重金属、有毒的物质或对环境造成现实危害或者潜在危害的废弃物。其他垃圾:除上述几类垃圾之外的垃圾。...原创 2019-07-04 15:27:41 · 4347 阅读 · 1 评论 -
PHP 原生消息队列简单demo
下载demo原生消息队列目录介绍补充sql文件用法:部署代码文件->部署数据表->修改MysqliObj.php配置文件->用命令行模式(cli)执行messageList.php文件->用crontab定时3分钟执行一次monitorMessageListFile.php文件->用命令行执行addMessageL...原创 2019-07-10 17:42:30 · 444 阅读 · 0 评论 -
php SPL(PHP标准库)
官方解释:SPL是用于解决典型问题(standard problems)的一组接口与类的集合。列举几个常用的数据结构栈结构:栈结构是先进后出的特性我们使用push入栈,然后使用pop出栈。$stack = new SplStack();$stack->push("1\n");$stack->push("2\n");echo $stack->...原创 2019-08-14 16:30:00 · 176 阅读 · 0 评论 -
PHP 遍历文件夹目录
1.遍历目录下的文件夹和文件:public function bianli1($dir) { $files = array(); if($head = opendir($dir)) { while(($file = readdir($head)) !== false) { ...原创 2019-09-11 19:36:37 · 181 阅读 · 0 评论 -
PHP 万亿级别以下的int类型(钱)单位转为汉字
<?php/** * Created by PhpStorm. * User: msi * Date: 2019/9/23 * Time: 22:07 *///输入要转换的金额$moneyUnitObj = new MoneyUnit();echo $moneyUnitObj->moneyChangeBig(880070066.135 , true);Clas...原创 2019-09-24 00:34:32 · 575 阅读 · 0 评论 -
CI 框架各类库的加载方法
1、核心类库核心类库位于 system/core/ 自动加载控制器中使用方式: 直接使用$aa = $this->config->base_url();$bb = $this->uri->uri_string();1 2其他位置使用:$CI = &get_instance();$aa = $CI->config->base...转载 2018-09-04 15:42:01 · 880 阅读 · 0 评论 -
yii2.0 Activeform表单部分组件使用方法
文本框:textInput();密码框:passwordInput();单选框:radio(),radioList();复选框:checkbox(),checkboxList();下拉框:dropDownList();隐藏域:hiddenInput();文本域:textarea(['rows'=>3]);文件上传:fileInput();显示图片:imgI...原创 2019-04-02 11:12:17 · 153 阅读 · 0 评论 -
PHP 二进制和十进制转换
<?phpclass Number{ public $number; public $result; public $limit = 0; /** * 二进制转十进制 * @param $number * @return mixed */ public function twoChangeTen($numbe...原创 2019-03-21 16:13:32 · 1332 阅读 · 0 评论 -
get传值base64不能解密的问题(urlsafe_base64)
get传值的时候url会吧里面的特殊符号转义,我们只要把可能出现的url特殊符号替换成url不会转的符号就行了(这个要和对方统一)/** * URL base64解码 * '-' -> '+' * '_' -> '/' * 字符串长度%4的余数,补'=' * @param unknown $string */function urlsafe_b64decode($s...原创 2018-12-28 14:34:27 · 1009 阅读 · 0 评论 -
PHP出现SSL certificate: unable to get local issuer certificate的解决办法
当本地curl需要访问https时,出现SSL certificate: unable to get local issuer certificate错误信息解决办法:到http://curl.haxx.se/ca/cacert.pem下载pem文件,并将文件拷贝到D:\phpStudy\PHPTutorial\cacert.pem在php.ini增加curl.cainfo = "...转载 2018-12-17 12:16:48 · 1841 阅读 · 0 评论 -
PHP中×tamp自动转化为×的解决办法
/** * url地址参数 * @param $arr * @return bool|string */ function url_union($arr){ if (!is_array($arr)){ return false; } $data = ''; $i = 0; fo...原创 2018-12-21 11:46:34 · 4255 阅读 · 0 评论 -
PHP生成手机号码
//匹配手机号的正则表达式 #^(13[0-9]|14[47]|15[0-35-9]|17[6-8]|18[0-9])([0-9]{8})$# $arr = array( 130,131,132,133,134,135,136,137,138,139, 144,147, 150,151,152,153,155...原创 2018-12-07 14:46:18 · 1192 阅读 · 1 评论 -
rsa加密后无法解密的问题
今天和Java对接后台接口,发现Java加完密之后的我这边(PHP)无法解密,原因是:rsa加密长度最长是117,超过这个长度就需要分段加密,下面直接奉上rsa加解密类库<?php/** * rsa加密类 * Class Rsa */class Rsa{ const CHAR_SET = "UTF-8"; const BASE_64_FORMAT = "U...原创 2018-11-08 17:08:12 · 5313 阅读 · 0 评论 -
谈谈对高内聚低耦合的认识
1. 低耦合(Low Coupling)“低耦合”这个词相信大家已经耳熟能详,我们在看spring的书籍、MVC的数据、设计模式的书籍,无处不提到“低耦合、高内聚”,它已经成为软件设计质量的标准之一。那么什么是低耦合?耦合就是对某元素与其它元素之间的连接、感知和依赖的量度。这里所说的元素,即可以是功能、对象(类),也可以指系统、子系统、模块。假如一个元素A去连接元素B,或者通过自己的方法可以...转载 2018-07-16 10:16:13 · 1144 阅读 · 0 评论 -
超详细 Linux 下编译安装Redis 以及php配套使用
一、Linux 下安装Redis下载地址:http://redis.io/download,下载最新文档版本。把鼠标移到上图的绿色框上,就会显示下图提示:(直接右键复制链接就好)本教程使用的旧版,文档版本为 3.2.11,(旧版的链接在同一页面的下方找的到)下载并安装:$ wget http://download.redis.io/releases/redis-3.2....转载 2018-07-19 09:40:11 · 153 阅读 · 0 评论 -
PHP中的trait,interface和abstract
<?phptrait MyTrait{ protected $var = "MyTrait_var"; protected $var1 = "MyTrait_var"; function __construct() { echo $this->var.PHP_EOL; } function a() { ...转载 2018-07-18 11:11:02 · 223 阅读 · 0 评论 -
php结合redis实现高并发下的抢购、秒杀功能
原文:https://blog.youkuaiyun.com/nuli888/article/details/51865401抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少("超卖"问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题 常规写法:查...转载 2018-07-16 19:30:30 · 177 阅读 · 0 评论 -
PHP 实现AES/CBC/PKCS5Padding加解密(对称加密)
/** * Class Aes */class Aes { private $iv = '';//密钥偏移量IV,可自定义 private $encryptKey = '';//AESkey,可自定义 public function set_key($key){ $this->encryptKey = $key; } pub...原创 2018-12-28 14:37:49 · 3945 阅读 · 0 评论 -
CI框架调用阿里大于短信平台demo
<?php/** * SMS短信发送服务 */require_once str_replace('\\','/',APPPATH) . 'libraries/api_sdk/vendor/autoload.php';use Aliyun\Core\Config;use Aliyun\Core\Profile\DefaultProfile;use Aliyun\Core\De...原创 2019-01-07 17:56:00 · 445 阅读 · 0 评论 -
PHP file_exists():open_basedir
在生成二维码的时候往二维码上面添加logo报了这个错误:Message: file_exists(): open_basedir restriction in effect. File(/home/static/images/logo.png) is not within the allowed path(s): (/home/wwwroot/api.qinjiakonggu.com:/t...原创 2019-03-21 12:35:59 · 938 阅读 · 0 评论 -
前后端分离中跨域的问题
默认是只可以访问本域名下的文件,但是只需要在服务端把访问权限打开就OK了最简单的方法就是在框架的入口文件加入权限://*代表所有请求都允许,可以吧*替换成某个域名header("Access-Control-Allow-Origin:*");//允许请求来源方法header("Access-Control-Allow-Methods:get,post");还可以通过配置ngi...原创 2019-03-11 18:47:44 · 115 阅读 · 0 评论 -
PHP curl类库(post、get、json)请求
<?php/** * Created by PhpStorm. * User: 18110 * Date: 2018/12/14 * Time: 18:47 */class Curl{ /** * post请求 * @param $url * @param array $post_data * @param string $m...原创 2019-03-15 12:13:49 · 1471 阅读 · 0 评论 -
CI 框架记录日志函数
代码中的:是CI框架自带的接值方法,不需要就直接删除Directory()也是自己封装的递归创建文件夹函数点击了解 :Directory()/** * 记录日志 */ function logMessage($level, $msg) { $level = strtolower($level); // 支持的错误类型 ...原创 2019-03-14 17:09:42 · 2335 阅读 · 0 评论 -
PHP 递归创建文件夹
/** * 递归创建文件 * @param $dir * @return bool */ function Directory($dir){ if(is_dir($dir) || @mkdir($dir,0777,true)){ //查看目录是否已经存在或尝试创建,加一个@抑制符号是因为第一次创建失败,会报一个“父目录不存在”的警告。 return true; ...原创 2019-03-14 17:04:15 · 503 阅读 · 0 评论 -
CI框架文件上传+多文件上传+文件下载
代码中的logMessage()和Directory()是自己封装的记录日志和递归创建文件夹助手函数注意修改!!!点击查看:Directory() logMessage()<?php/** * Created by PhpStorm. * User: 123 * Date: 2018/9/13 * Time: 14:56 */class Images{...原创 2019-03-14 16:55:11 · 800 阅读 · 0 评论