
php
追梦赤子心刘大哥
这个作者很懒,什么都没留下…
展开
-
PHPMailer发送邮件失败,SMTP Error: Could not connect to SMTP host.
1、第一步打开调试模式,查看报错信息$mail->SMTPDebug = 2;2、添加如下代码,跳过验证一般像qq邮箱,163邮箱不会出现连接SMTP服务器失败的问题,像有自己的公司域名的邮件服务器容易出现发送失败的问题。$mail->SMTPOptions = array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' =&原创 2021-11-16 18:21:54 · 1651 阅读 · 0 评论 -
PHP打印总是输出缓存结果的解决办法(关闭opcache、清除opcache缓存)
有时候调试个打印结果,总是不能即时输出,而是输出上次的打印结果,这是因为服务器opcode缓存。关闭服务器缓存:原创 2021-06-09 13:36:22 · 1480 阅读 · 1 评论 -
PHP相关数据处理
1、多维数组按照指定键名排序$order_created_at = array_column($data,'created_at');array_multisort($order_created_at ,SORT_DESC,$data);2、替换数组指定键名:循环原数组,将需要替换的键值复制给指定的键名,然后再unset掉原键名。//原键名:id 指定键名:userid foreach ($data as $key => $value) { $data[$k原创 2020-12-01 17:56:27 · 219 阅读 · 0 评论 -
PHP程序查看Windows系统和Linux系统的磁盘剩余空间
if(strtoupper(substr(PHP_OS,0,3))==='WIN'){ //windows服务器 $free_space = number_format((disk_free_space("C:")/disk_total_space("C:")), 2);}else{ $sh = shell_exec('df -lh | grep -E "^(/)"'); $sh = preg_replace("/\s{2,}/", ' ', $sh); $hd = e.原创 2020-09-10 18:27:41 · 580 阅读 · 0 评论 -
PHP中文名上传错误问题
PHP中文名上传错误问题解决:$fileName = iconv('UTF-8', 'GBK', $fileName);原创 2020-09-10 14:56:45 · 182 阅读 · 0 评论 -
DingTalk钉钉消息通知
开发文档:Link钉钉消息通知简单分为单纯的消息通知(没有回复) 和 会话。1、自定义机器人开发通知不需要sdk包。<?php function request_by_curl($remote_server, $post_string) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $remote_server); curl_setopt($ch, CURLOPT_POST, 1); .原创 2020-08-19 17:00:29 · 4257 阅读 · 0 评论 -
在 Laravel 中使用 基于Workerman 的Gateway-worker进行 socket 长连接通讯
1、安装gateway-workergateway-worker 它已经引入了 workerman/workerman.composer require workerman/gateway-worker如果找不到此包,建议更换composer源。阿里的源找不到,我重置到官方源可以安装。源连接2. 创建 Workerman 启动文件创建一个 artisan 命令行工具来启...原创 2020-03-25 18:26:31 · 3092 阅读 · 0 评论 -
图数据库Neo4j学习一
一个图数据库有这么几个标签属性手册:LinkMATCH命令语法:MATCH ( <node-name>:<label-name>)RETURN命令语法:RETURN <node-name>.<property1-name>, ... <node-...原创 2020-03-19 14:32:34 · 238 阅读 · 0 评论 -
PHP查询图数据库neo4j,通过composer安装,symfony、laravel皆可
资料:neo4j的phperComposer安卓php调用neo4j的扩展。Github:Link一、安装github上使用的Symfony框架,而我使用的是laravel框架,不影响框架都遵循psr,自动加载规则。1、安装即可,neo4j新版就是支持 bolt 连接的4.0版本。老的neo4j只支持http连接,很多php的扩展都老旧了,用不了。composer requi...原创 2020-03-19 12:01:12 · 792 阅读 · 0 评论 -
用 PHP 进行 HTTP 认证,Basic Auth
实现基本的简单Basic Auth认证。php手册可以用header()函数来向客户端浏览器发送“Authentication Required”信息,使其弹出一个用户名/密码输入窗口。当用户输入用户名和密码后,包含有 URL 的 PHP 脚本将会加上预定义变量PHP_AUTH_USER,PHP_AUTH_PW和AUTH_TYPE被再次调用,这三个变量分别被设定为用户名,密码和...原创 2020-03-18 18:37:36 · 3846 阅读 · 0 评论 -
laravel 定时任务秒级执行方法及/dev/null 2>&1
一、直接将循环写到php代码里,再将 * * * * * php artisan schedule:run >> /dev/null 2>&1 写进crontab -efor ($i=1;$i<=20;$i++){ $users = $this->user->getUserIDs(); foreach ($users as...原创 2020-03-16 11:22:50 · 2798 阅读 · 0 评论 -
crontab的语法规则格式
转载 2020-03-10 10:40:40 · 156 阅读 · 0 评论 -
Mysql之创建指定数据库操作权限的数据库用户
以下示例为创建一个具有一定权限的数据库(数据库账号仅对当前数据库生效)。创建一个新的空数据库。默认编码为UTF8:CREATE DATABASE dbname DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;为数据库创建具有适当权限的用户/密码组合。例如(再次使用MySQL):mysql> GRANT SELE...原创 2020-01-08 17:45:05 · 446 阅读 · 0 评论 -
PHP获取接口数据的方式file_get_contents和$_REQUEST
file_get_contents('php://input')和$_REQUEST的区别?$_REQUEST包含$_POST和$_GET和$_COOKIE的所有数据,是根据键值对解析好的。而php://input是原始数据,是未解析的。如果提交的是表单form,enctype是application/x-www-form-urlencoded或者multipart/form-data,那...原创 2019-12-09 14:08:11 · 641 阅读 · 0 评论 -
Homestead切换PHP版本
一、加载配置文件时指定sites: - map: homestead.test to: /home/vagrant/code/Laravel/public php: "7.1"二、vagrant ssh 进入之后修改php70php71php72php+版本号切换,我遇到一个问题,php72切成功之后,php73 命令找不到。尝试第三种。...原创 2019-12-04 18:58:05 · 1138 阅读 · 0 评论 -
Homestead环境、虚拟机环境等安装Mongodb,以及源的报错处理,以及安装php的Mongodb扩展
还是官方网站靠谱:虽然我的Homestead是Centos+ubuntu19.04的环境,官网只给了16.04和18.04的安装教程,但是用18.04的教程安装是OK的。根据自己选择的系统和环境去安装。Link:官方地址一、首先我参照文档去测试Homestead环境自动安装。1、需要在 Homestead.yaml 中加入mongodb: true,其实就是调起 homeste...原创 2019-12-04 18:03:32 · 734 阅读 · 0 评论 -
Redis Desktop Manager连接Homestead内redis
首先Homestead环境默认已经安装Redis,具体查看官方文档。Redis启动命令sudo service redis start/restartps -ef | grep redis 查看redis是否启动一、如果你不想为redis配置密码,在默认情况下也可以连接。sudo vim /etc/redis/redis.conf可以看到密码和绑定的ip,默认配...原创 2019-12-04 11:58:33 · 858 阅读 · 0 评论 -
PHP检测上传文件编码类型的方法
Windows 10 的1.txt记事本默认类型为ANSI: ANSI=>GBK,Unicode=>UTF-16LE,UTF-8=>UTF-8ANSI类型的,默认还带BOM头,file_get_contents读出来开头会有特殊字符,所以一般选择上传文件选择UTF-8类型的文件去上传。 /** * 检测文件编码类型 * @param strin...原创 2019-11-25 16:16:24 · 814 阅读 · 0 评论 -
Slim框架导入csv文件并将文件内容导入数据库
可以选择form表单提交或者Ajax提交,form表单简单点,所以我选择Ajax。一、前端html<tr> <td><input type="file" name="file" id="file"/></td></tr><tr> <td><input type="submit...原创 2019-11-22 17:45:35 · 264 阅读 · 0 评论 -
Mysql5.7 字符集、排序规则设置导致错误
一、报错信息及原因错误输出信息,这是由于Mysql创建表时的字符集、排序规则方式和框架默认配置的不一致造成的:MySQL 5.5.3之后增加了utfmb4字符编码,以前PHP版本、Mysql版本低的时候习惯性选择: 资料表明,utf8和utfmb4差别不大,后者支持了一些emoji等特殊的字符,一般而言选谁都可以,我用laravel5.6版本的时候看到配置里默认使用utf8mb4: ...原创 2019-11-22 17:21:23 · 1169 阅读 · 0 评论 -
phpstorm配置sftp自动上传、下载文件,同步修改项目使用
这样就不用将服务器项目脱下来在本地修改,修改完再上传服务器那么麻烦了。Link1、Link2转载 2019-11-05 18:10:25 · 1249 阅读 · 0 评论 -
laravel 执行原生sql语句
参考:Link$db = DB::reconnect('MySQL1');$sql = 'insert into a values (1);insert into b values(2);';$db->getPdo()->exec($sql);$results = DB::select('select * from users where id = :id', ['id...原创 2019-10-29 14:44:25 · 10137 阅读 · 2 评论 -
laravel查询结果后判断是否为空
如果是get()查询的结果为空,其实$users打印值为object(Illuminate\Database\Eloquent\Collection)#339 (1) { ["items":protected]=> array(0) { } } :类似为null的还有 pluck('name')等$users = DB::table('users')->where('id'...原创 2019-10-29 14:28:27 · 4195 阅读 · 0 评论 -
laravel报错:There is no existing directory at \"/var/www/html/Mac/storage/logs\" and its not buildable
有时候当我们将项目从一个服务器迁移到另一个服务器的后,我们一定要记得清理路由等缓存。不然框架默认读取缓存就会出错。有可能报错:There is no existing directory at \"/var/www/html/Mac/storage/logs\" and its not buildable也有可能报错:file_put_content() 参数的路径和我们配置的...原创 2019-10-25 15:52:46 · 4172 阅读 · 4 评论 -
接替上篇用github的文章,继续开发使用facebook第三方登录
上番:https://blog.youkuaiyun.com/qq_37035946/article/details/87279318在此之前你要去facebook官网用邮箱注册一个账号:https://www.facebook.com然后按步骤验证即可。1、登录facebook开发者网页:https://developers.facebook.com/右上角找到创建应用,一步步操作。...原创 2019-10-23 15:46:18 · 264 阅读 · 0 评论 -
php的一些扩展安装以及配置php.ini
查看php扩展php -m配置使用的php.ihiphp -i | grep php.ini然后重启sudo service php7.2-fpm restartsudo service apache2 restart# 安装常用扩展sudo -y apt-get install php7.2-fpm php7.2-mysql php7.2-curl php7...原创 2019-09-03 13:53:29 · 285 阅读 · 0 评论 -
Laravel中的jwt几种用法
就拿登录来说://条件$credentials = ['email' => $email, 'password' => $password];$token = auth('api')->attempt($credentials);等价于JWTAuth::attempt($credentials)等价于Auth::guard('api')->...原创 2019-02-22 15:57:47 · 1132 阅读 · 0 评论 -
laravel 操作数据库以及返回值,ORM、DB 方便查看
ORM操作Eloquent Cheat SheetSelect ->select('col1','col2') ->select(array('col1','col2')) ->select(DB::raw('businesses.*, COUNT(reviews.id) as no_of_ratings, IFNULL(sum(reviews.scor...原创 2019-09-27 17:25:56 · 1707 阅读 · 0 评论 -
Curl 访问接口
参考:Link先来张postman的:Get方式curl https://itbilu.com/?keyword=linux&page=3 or curl https://itbilu.com/sendorcurl -X GET https://itbilu.com/?keyword=linux&page=3Post方式curl使用POST提...原创 2019-09-26 16:48:18 · 1692 阅读 · 0 评论 -
PHP(框架)常用函数
字符串函数 addcslashes 像C语言一样使用反斜线转义字符串中的字符 addslashes ★ 使用反斜线引用字符串 bin2hex ★ 将二进制数据转换成十六进制表示 chr ★★ 返回相对应于ascii码值所指定的单个字符。 chunk...原创 2019-05-22 18:26:34 · 368 阅读 · 0 评论 -
Linux环境(ubuntu)php5版本升级到php7
sudo apt-get install python-software-propertiessudo add-apt-repository ppa:ondrej/phpsudo apt-get updatesudo apt-get install -y php7.0sudo apt-cache search php7-* 安装所需模块 sudo apt-get install ...原创 2019-02-27 11:37:11 · 2232 阅读 · 0 评论 -
Centos 7 安装(卸载)Jenkins持续集成环境
1、安装JDK首先确认该机器已经安装jdk,确认方式:在linux机器上输入 : java -version若系统可识别java命令,则表示已安装jdk。否则,需要安装JDK,输入:yum install -y java 2、安装jenkinsJenkins下载官网地址、Centos安装地址 首先,安装方式有两种:离线安装jenkins.war和在线yum安...原创 2019-02-25 15:49:58 · 6345 阅读 · 0 评论 -
Centos 6/7 升级 PHP 5.6 到 7.1/7.2
1. 检查当前安装的 PHP查看当前 PHP 版本php -v查看当前 PHP 相关的安装包yum list installed | grep php2. 更换 RPM 源#Centos 5.X:rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm#CentOs 6.x:rpm -Uvh http:/...原创 2019-02-28 15:53:10 · 1416 阅读 · 0 评论 -
Laravel implements Google login
先注册一个google账号,google旗下工具还是挺强大的。声明:如果你是后端开发者,请参考:Socialite的使用,毕竟如果后端能完成的事情,就尽量别给前端小姐姐添麻烦呗,方便你我他,除非他是个男的,你随意。。。言归正传,强烈建议使用Socialite开发。下面是我按照官方手册走的弯路,功能单一。1、先附上google登录的前端代码网站:google登录前端代码Add Goog...原创 2019-02-18 19:03:25 · 1286 阅读 · 0 评论 -
Laravel graph SDK for facebook login
声明:如果你是后端开发者,请参考:Socialite的使用,毕竟如果后端能完成的事情,就尽量别给前端小姐姐添麻烦呗,方便你我他,除非他是个男的,你随意。。。言归正传,强烈建议使用Socialite开发。下面是我按照官方手册走的弯路,功能单一。简介:graph 是facebook的第三方登录专用插件:Facebook SDK for PHP (v5)附上github地址:php-graph-...原创 2019-02-18 15:35:58 · 793 阅读 · 0 评论 -
JWT官方安装方法及使用参考
一、安装通过composer安装运行以下命令以引入最新版本:composer require tymon/jwt-auth添加服务提供商将服务提供程序添加到配置文件中的providers数组,config/app.php如下所示:'providers' => [ ... Tymon\JWTAuth\Providers\LaravelSe...原创 2019-02-22 14:09:33 · 6270 阅读 · 0 评论 -
Laravel5.5+的开发环境以及Homestead.ymal配置、vagrant
具体安装参考官方:https://laravelacademy.org/post/8671.html多站点配置,没有使用端口转发,所以需要配置host文件---ip: "192.168.10.10"memory: 2048cpus: 1provider: virtualboxauthorize: ~/.ssh/id_rsa.pubkeys: - ~/.ssh/i...原创 2019-02-21 16:07:46 · 212 阅读 · 0 评论 -
Laravel5.6 使用 JWT 开发API中的疑惑
使用JWT参考文章:JWT的使用、JWT使用完整详解简单梳理几个疑惑点。记录一下。首先要区分laravel自带的auth认证方法和jwt的认证方法有哪些,别搞混了,你用jwt的方式生成token,用自带的auth去验证这就不对了。安装完JWT可用中间件有:auth、auth:api、jwt.auth、jwt.refresh、jwt.check、jwt.renew 1、在传统的做...原创 2019-02-21 15:52:59 · 1016 阅读 · 1 评论 -
Laravel5.6 使用 JWT 开发后台 API
自己留个笔记吧,一边搭建一边记录。之前是使用dingo+jwt搭建的Api认证,这次只用jwt。参考文档:参考jwt的文章 并作修改Laravel1. 使用 composer 安装# 建议使用1.0以上版本composer require tymon/jwt-auth 1.*@rc2. 进行一些配置Providersconfig/app.php 中在 provide...原创 2019-02-15 14:47:09 · 970 阅读 · 0 评论 -
php 性能优化
php流程php语句=》(sender底层)=》sender语法=》(解析)=》opcodes=》(执行)=》输出1、ab 命令 压力测试yum -y install httpd-toolsab -n100 -c10 http://www.baidu.com/XHprof PHP性能测试工具linux 安装xhprof 自己可以在网上找个教程看看,p...原创 2019-05-22 19:05:11 · 162 阅读 · 0 评论