- 博客(16)
- 资源 (62)
- 收藏
- 关注
原创 Hyperf插件之passport认证插件richard8768/hyperf-passport
hyperf 的 hyperf-passport 组件,支持对多种用户进行登录授权,支持Oauth2.0的四种授权模式以及laravel passport的personal access token模式,目前所有授权模式已完全可用。本组件参考了 laravel 的 passport 组件设计,使用体验大体和 laravel 的 passport 差不多。任何问题请加QQ提问:444626008。
2023-02-16 00:51:25
383
转载 [转]弱类型、强类型、动态类型、静态类型、编译型和解释型语言的区别
静态类型指的是编译器在compile time执行类型检查,动态类型指的是编译器(虚拟机)在runtime执行类型检查。简单地说,在声明了一个变量之后,不能改变它的类型的语言,是静态语言;能够随时改变它的类型的语言,是动态语言。因为动态语言的特性,一般需要运行时虚拟机支持。弱类型相对于强类型来说类型检查更不严格,比如说允许变量类型的隐式转换,允许强制类型转换等等。强类型语言一般不允许这么做。
2022-08-25 11:57:59
194
转载 [转]现代编程语言系列1:静态类型趋势
静态类型是现代语言的发展趋势之一。近年来,不仅有很多静态类型的现代语言兴起,还有不少动态类型语言也在引入静态类型支持。下面我们就来看下为何静态类型会如此受到现代语言的青睐。
2022-08-25 11:39:14
260
转载 [转]PHP5-8各版本特性详解
常量是一个简单的标识符。在脚本执行期间该值不能改变(除了所谓的魔术常量,他们其实不是常量)。常量默认大小写敏感。通常常量标识符总是大写的。可以用define()函数来定义常量。在php5.3.0以后,可以使用const关键字在类定义的外部定义常量,先前版本const关键字只能在类(class)中使用。一个常量一旦被定义,就不能再改变或取消定义。const和define的区别?const是一个语言结构,而define是一个函数。const在编译时要比define快很多。
2022-08-25 11:35:14
987
转载 [转]php 回调函数结合闭包(匿名函数)的使用示例以及call_user_func 反射 new区别
【代码】[转]php 回调函数结合闭包(匿名函数)的使用示例。
2022-08-25 10:44:07
342
原创 PHP获得二维关联数组的最后一个元素和第一个元素
$arr = ["1058"=>["rec_id"=>244443,"ret_id"=>1058,"return_status"=>6,"return_type"=>3,"refound_status"=>0,"self_cancel"=>0,"agree_apply"=>0],"1059"=>["rec_id"=>244443,"ret_id"=>1059,"return_status"=>6,"return_type"=>3,
2022-02-25 11:46:31
618
原创 Hyperf生成URL地址
class Url{ /** * Generate an absolute URL to the given path. * * @param \Hyperf\HttpServer\Contract\RequestInterface $request * @param string $path * @param mixed $extra * @return string */ public static functio.
2021-09-09 10:59:49
709
原创 Hyperf邮件发送
$channel = new \Swoole\Coroutine\Channel();co(function () use ($channel, $config, $mailCharset, $subject, $content, $email) { $mail = new PHPMailer(); //PHPMailer对象 $mail->CharSet = $mailCharset; //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码 $mai.
2021-09-09 10:56:33
1074
1
转载 PHP 判断类中是否包含特定的 const 常量
class A { const STATUS_SUCCESS = 1; const STATUS_FAILED = 0;}要怎样才能判断类中是否包含 A::STATUS_SUCCESS 这个变量呢? 理论上来讲,我们可以使用 PHP 的Reflection机制,如:$ref = new ReflectionClass('A');print_r($ref->getConstants());/* 输出:Array ( ['STATU...
2021-09-09 10:55:13
651
原创 Hyperf插件之passport认证插件richard8768/hyperf-passport
hyperf 的 hyperf-passport 组件,支持对多种用户进行登录授权支持Oauth2.0的四种授权模式,目前密码授权模式已完全可用。下载地址:https://github.com/richard8768/hyperf-passport本组件参考了 laravel 的 passport 组件设计,使用体验大体和 laravel 的 passport 差不多。> 任何问题请加QQ提问:444626008PHP>=7.4 安装依赖包#授权依赖包$ composer require 96qbhy
2021-08-10 13:51:04
1638
原创 Hyperf自定义中间件之API签名认证
<?phpdeclare(strict_types=1);namespace App\Middleware;use Psr\Container\ContainerInterface;use Psr\Http\Message\ResponseInterface;use Psr\Http\Server\MiddlewareInterface;use Psr\Http\Message\ServerRequestInterface;use Psr\Http\Server\RequestH.
2021-07-16 11:25:26
691
原创 Hyperf自定义核心中间件使之支持API版本升级
<?phpdeclare(strict_types=1);namespace App\Middleware;use Closure;use FastRoute\Dispatcher;use Hyperf\Contract\NormalizerInterface;use Hyperf\Di\MethodDefinitionCollectorInterface;use Hyperf\HttpMessage\Stream\SwooleStream;use Hyperf\HttpSer.
2021-07-16 11:22:42
503
原创 不使用K8S和Docker Swarm的情况下,纯Docker环境下nginx+hyperf+pm2的部署方案
一 、构建Php镜像,其镜像包含pm2和pm2-logrotate以及ssh公钥登录功能DockerfileFROM ubuntu:18.04MAINTAINER jobsen123@qq.comENV DEBIAN_FRONTEND noninteractiveRUN sed -i -e s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g -e s@/security.ubuntu.com/@/mirrors.aliyun.com/@g /etc/.
2021-07-16 11:14:48
3961
原创 windows环境下在Boot2Docker中安装docker-compose和docker-machine
在windows环境下使用Boot2Docker安装docker时,由于Boot2Docker是使用的TinyCoreLinux系统(TinyCoreLinux是内存闪存系统,为保证系统的快速启动运行,所有数据都保存在内存中,所以当重启系统之后对系统的所有修改将被删除),而该系统本身不支持持久化,所以我们不能像其他LINUX系统那样安装docker-compose和docker-machine,只能通过其他方式安装。好消息是为我们提供了/opt/bootlocal.sh脚本,该脚本用于系统启动后自动运行的命
2021-04-25 11:17:29
399
原创 redis布隆过滤器以及在PHP中的使用
1、布隆过滤器简介布隆过滤器是一种数据结构,是一个很长的二进制向量和一系列随机映射函数,可以将其看成一个二进制数组。布隆过滤器可以用于检索一个元素是否在一个集合中。既然布隆过滤器是二进制,那么里面存放的不是0,就是1,但是初始默认值都是0。向布隆过滤器添加数据前面我们说过布隆过滤器就像一个二进制数组一样,那我们如何向布隆过滤器中添加一个数据呢?如下图所示:当要向布隆过滤器中添加一个元素key时,我们通过多个hash函数,算出一个值,然后将这个值所在的方格置为1。比如,下图hash1(key)
2021-04-19 23:24:23
476
转载 [转]程序员的七种武器
信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封。本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十分不可取。而另外一种情况是,IT技术的日新月异使很多程序员眼花缭乱,什么都想学,却又不知从何学起,今天看看这个,明天学学那个,贪多不熟。 虽然IT技术发展迅速,但很多技术都是有规律可循,一些基本的概念、原理和方法还很通用,可以举一反三。本人根据自己的体会和经验,向那些刚刚踏入IT行业的新程序员们或
2021-04-19 11:02:45
180
REST API 安全设计指南.pdf
2020-05-26
NOSQL数据库入门
2013-05-21
《HTTP权威指南》最新中文完整版本.pdf
2013-05-20
Agile+Web+Application+Development+with+Yii+1.1+and+PHP5
2012-03-20
Improving Web Application Security: Threats and Countermeasures
2008-05-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人