![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
后端
后端开发
冯璋裕
自由人
展开
-
MVC、MVCS、MVVM、MVP、VIPER等架构模式
在项目开启阶段,其中一个很重要的环节就是选架构。那么面对目前已知的这么多架构模式我们该怎么选择呢?这确实是个很让人头疼的问题!下面我就在这里梳理一下目前常见的一些架构模式。先逐个对它们的分析,然后在从中找到它们的规律,之后就可以以不变应万变,不会再被这些虚头巴脑的名词所迷惑。本篇文章主要从两个维度进行分析:一、任务分配方式二、逻辑分层方式先看一下MVC、MVCS、MVVM、MVP、VIPER架构模式的任务分配方式MVCMVC是最经典的架构模式,它出现的时间非常早,也是最被人所熟知的。MV原创 2022-07-19 11:41:31 · 639 阅读 · 0 评论 -
mcrypt加密解密弃用后用openssl解决
mcrypt加密try { //获得16位随机字符串,填充到明文之前 $random = $this->getRandomStr(); $text = $random . pack("N", strlen($text)) . $text . $appid; // 网络字节序 $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC); $module = mcrypt_module_ope转载 2021-06-18 14:35:38 · 359 阅读 · 0 评论 -
mcrypt弃用,使用openssl_encrypt,接收微信推送的数据进行解密、加密踩坑
一、接收微信服务器的xml加密推送(代码接收xml格式数据)二、对消息进行解密(获取到xml格式数据进行解密)注意:本人使用微信解密DEMO踩过的坑。(1)引入框架中,命名错误,文件名称为小写,类名为大写。调用报错。解决方式:修改文件名称为大写。(2)由于与类同名的方法将不会是构造函数;所以需要单独调用,或者修改为构造方法。修改前:$pc = new WXBizMsgCrypt($token, $encodingAesKey, $appId);修改后:$pc = new WXBizMsg原创 2021-06-18 10:27:16 · 410 阅读 · 1 评论 -
MVC、MVCS、MTV、MVP框架模式
框架模式有哪些?MVC、MVCS、MTV、MVP、等等;MVC框架经典MVC模式中1、模型(Model)M是指业务模型2、视图(View)V是指用户界面3、控制器(Controller )C则是控制器使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。具有耦合性低,重用性高、生命周期成本低等优点。MVCS框架分离:MVCS 提供一种将你的应用程序分离到提供特定功能的无关联的层的很自然的方法。1、视图(View)原创 2021-04-10 15:19:37 · 732 阅读 · 1 评论 -
PHP取整数函数 / PHP保留小数
PHP取整数函数 / PHP取整数保留小数常用的几种方法:$num = 5.5615;第一种 直接取整,舍弃小数,保留整数:intval() echo intval($num); 结果:5第二种 四舍五入取整:round() echo round($num); 结果:6第三种 向上取整,有小数就加1:ceil() echo ceil($num); 结果:5第四种 向下取整:floor() echo f原创 2021-03-28 00:07:51 · 625 阅读 · 0 评论 -
php数组排序、二维数组根据某个字段排序/指定多个字段排序/指定某个字段排序
二维数组根据指定某个字段排序、指定多个字段排序按照某一个字段排序$sort = array( 'direction' => 'SORT_ASC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序 'field' => 'limit', //需要排序的字段 ); $arrSort = array(); foreach($arr AS $uniqid => $row){ foreach($row AS原创 2021-01-08 15:41:37 · 485 阅读 · 0 评论