- yii2自动跳转登陆 ie低版本无效
飞狐or
ie低版本访问yii2框架yii2初始化配置phpyii2后端
Yii2ie低版本访问登陆页面报错如图不能自行跳转到登陆界面如图不能自行跳转到登陆界面查找原因Yii2默认验证请求头类型为public$acceptableRedirectTypes=['text/html','application/xhtml+xml'];ie低版本请求头内容类型为'application/x-ms-application'将ie请求类型增加到yii2\web\user.php
- yii2 中获取 模块、控制器、方法名的方法
爱好者777
yiiphp
yii2中获取模块、控制器、方法名的方法在视图中在控制器中在控制器的beforeAction方法中(方法接收$action参数)在视图中模块名:$this->context->module->id;控制器名:$this->context->id;方法名:$this->context->action->id;在控制器中模块名:$this->module->id;控制器名:$this->id;方法名:
- Yii实现RabbitMQ队列
huaweichenai
rabbitmq分布式phpyii
一:拓展安装composerrequireyiisoft/yii2-queuecomposerrequireenqueue/amqp-lib2:RabbitMQ队列配置在配置文件中配置RabbitMQ队列'components'=>[...'queue'=>['class'=>yii\queue\amqp_interop\Queue::class,'host'=>'192.168.6.88',//
- Yii2 数据操作Query Builder
强哥83
Yii2
QueryBuilder$rows=(new\yii\db\Query())->select(['dyn_id','dyn_name'])->from('zs_dynasty')->where(['between','dyn_id',1,30])->limit(10)->all();print_r($rows);useyii\db\Query;$query=(newQuery())->from('
- Leetcode 154. Find Minimum in Rotated Sorted Array II
SnailTyan
文章作者:Tyan博客:noahsnail.com|CSDN|1.DescriptionFindMinimuminRotatedSortedArrayII2.SolutionclassSolution{public:intfindMin(vector&nums){intleft=0;intright=nums.size()-1;while(leftnums[left]){left=mid+1;}e
- yii2 redis 操作list 移除操作,lrem根据值进行移除
程序小院
yii2PHPredislistbootstrap
yii2redis操作list移除操作,lrem根据值进行移除移出并获取列表头部或尾部的第一个元素,如果没有值返回nullYii::$app->redis->lpop($key);Yii::$app->redis->rpop($key);根据值进行移除$len=Yii::$app->redis->LLEN($key);//获取元素个数Yii::$app->redis->lrem($key,$len
- yii2 layui文件上传带参数
程序小院
前端JavaScript模版layui前端javascript
yii2layui文件上传带参数前端资源文件上传layui.use(['form','layer','upload'],function(){$=layui.jquery;varform=layui.form,layer=layui.layer,upload=layui.upload;upload.render({accept:'file',size:'20480',elem:'#upload-
- yii 基于php的Rbac权限控制
fuck_life
YiiYiiRBAC权限控制
RBAC,基于角色的访问控制,对RBAC有问题的朋友,可以转移到:基于角色的访问控制RBAC一文,进行了解.Yii2中,实现的是NISTRBAC模型.Yii2中,的RBAC管理,涉及到的内容有:权限,角色,规则,为角色赋予权限,为用户分配角色.我们会以一个案例,贯穿整个RBAC的使用,请继续阅读,和跟随练习,保证可以全面了解Yii2的RBAC机制实现.目标案例准备准备一:控制器中的几个动作方法,完
- yii2 redis记录用户行为,list列表 重复过滤,新数据保留最前面
程序小院
数据库redislistbootstrap
yii2redis记录用户行为,list列表重复过滤,新数据保留最前面\Yii::$app->redis->lrem($key,0,json_encode($array,true));\Yii::$app->redis->lpush($key,json_encode($array,true));\Yii::$app->redis->expire($key,2592000);重复数据删除新的数据追加
- Yii2之类自动加载
xiaopzi123123
php
在yii中,程序中需要使用到的类无需事先加载其类文件,在使用的时候才自动定位类文件位置并加载之,这么高效的运行方式得益于yii的类自动加载机制。Yii的类自动加载实际上使用的是PHP的类自动加载,所以先来看看PHP的类自动加载。在PHP中,当程序中使用的类未加载时,在报错之前会先调用魔术方法__autoload(),所以我们可以重写__autoload()方法,定义当一个类找不到的时候怎么去根据类
- yii2 mongodb 操作
xiaopzi123123
mongodb数据库
->where(['['$in'=>$categoryIdArr]];类似mysqlin操作($categoryIdArr是数组)->where(['label'=>['$regex'=>'赞美诗']])模糊搜索操作$where=['status'=>1,'name'=>['$regex'=>$search]];多个条件查询andWhere()orWhere()查询字段->select(['tit
- Yii2.0 视图模版继承与模版相互调用
小马儿_
模板继承与模板之间的相互调用在控制器中单独定义父模板public$layout='home';publicfunctionactionIndex(){return$this->render('index');}在views文件夹下layouts文件夹写一个home.phpPageTitle我是父模板//通过此方法告诉继承文件的内容放在这里模板相互调用render('test');?>
- yii2视图渲染和前端请求及后台响应
我的楼兰0909
username:">password:request->csrfToken?>">$('.sub').on('click',function(){varjson={};json.username=$('.username').val();json.password=$('.password').val();json._csrf=$('#_csrf').val();$.ajax({url:'/?r
- yii2 PHP updateAll()方法和save()方法同时使用对同一个字段更新,出现的异常情况
huazeci
php
1、表结构2、使用updateAll()和save()方法同时对同一条数据进行更新,会出现异常情况【网上说是脏属性导致的】,大家可以自测可以看出如果设置字段的值为字符串值,则不影响最后的结果,但是如果设置的是整数值,则会影响最后想要的结果;避免这种情况出现,可以避免两个方法同时【可以上下都使用save()方法,如下图】3:同时使用save()方法,则不影响最后想要的结果结果:updateAll()
- YII2中使用orderby问题
huazeci
php工作
$list=$query->orderBy(['spt.create_time'=>SORT_DESC])->offset(($pageNumber-1)*$pageSize)->limit($pageSize)->asArray()->all();实际项目中如果相同值的create_time会有超过limit个数的情况,就会出现每次随机取pageSize个;例如相同值的有15个,但是limit是
- yii2报错 Access to debugger is denied due to IP address restriction. The requesting IP address is 172
huazeci
php工作
在main-local.php添加allowedIPs即可debug是接口调用需要gii是用gii生成model需要
- Yii2 Formatter 格式化时间使用
卢卡上学
PHPyii框架
yii\i18n\Formatter是一个格式化的小助手,对于我们实现前端用户友好的显示有非常大的帮助。一、常用的属性$dateFormat日期格式:yyyy-MM-dd,或者“short”,“medium”,“long”,or“full”$datetimeFormat具体时间格式:yyyy-MM-ddHH:mm:ss$locale区域位置,如果没有设置,将使用yii\base\Applicati
- PHP - Yii2 异步队列
卢卡上学
PHPphpyii队列
1.前言使用场景在PHPYii2中,队列是一种特殊的数据结构,用于处理和管理后台任务。队列允许我们将耗时的任务(如发送电子邮件、push通知等)放入队列中,然后在后台异步执行。这样可以避免在处理大量请求时阻塞主应用程序,从而提高应用程序的性能和响应能力。批量任务需要提高处理速度,比如10万个消息,可以起10个异步队列消费进程,同时消费。延时任务,如订单超时30分钟未支付,自动取消。在Yii2中,队
- 【多商户开源-BSD- Fecmall 电商平台】
临水逸
php用户运营
关于FecmallFecmall关于,Fecmall介绍Fecbbc开源BSD多商户系统,真正开源,商用免费授权的多商户系统Fecmall系统简介:全称为FancyECommerceShop,着重于电商架构的研发优化,全新定义商城的架构体系,是基于phpYii2框架之上开发的一款优秀的开源电商系统,易于系统升级,二次开发以及第三方扩展,代码100%开源,作为一款定位于商城框架功能齐全的电商系统,您
- Yii2 where里不转义某个字段方法|复杂条件拼接
s听风忆雪
php数据库yiiphp后端数据库
$query=$table::find()->select('id')->where(['and',['or',['time_type'=>1],['and',['time_type'=>2,],['or',['and',['start_time],['>=','end_time',$this->start_time],],['and',['end_time],['>=','end_time',$
- yii2自增自减写法
s听风忆雪
phpyii数据库php
$status=false;//自增/自减数量自减的话写成负数$editData['quantity']=new\Yii\db\Expression('`quantity`+10');//普通修改字段$editData['update_time']=time();//条件$where=['id'=>$id];try{$status=\Yii::$app->db->createCommand()->
- codeception在YII2中的使用
gao922699
codeception是一款PHP的行为测试工具,能自动化进行单元测试、功能测试、验收测试等。官网:http://codeception.com/Yii2框架已经默认集成了codeception,可以直接使用,否则需要安装。安装过程见官方。看一下高级版的frontend的tests目录结构:image.png默认已经集成了验收测试、功能测试、单元测试模块,研究里面的代码可以基本满足上述三项测试的要
- soar-php 2.0 - SQL 语句优化器和重写器的 PHP 扩展包、 方便 SQL 语句调优
guanguans
soar-php是一个基于小米公司开源的soar开发的PHP扩展包,方便框架中SQL语句调优。image环境要求PHP>=7.1ext-pdo框架中使用Laravel-laravel-web-soarThinkPHP-think-soarHyperf-hyperf-soarYii2SymfonySlim安装$composerrequireguanguans/soar-php--dev使用下载Xia
- php rabbitmq yii2,yii2 使用 rabbitmq 扩展监听、发送消息
一起快走吧
phprabbitmqyii2
RabbitMQ是一个在AMQP基础上实现的企业级消息系统。何谓消息系统,就是消息队列系统,消息队列是“消费-生产者模型”的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取或者订阅队列中的消息。在开始前确保php安装了amqp扩展,如果没有安装,可进行安装。安装可参考:php安装amqp扩展扩展地址扩展安装composerrequiremikemadisonweb/yii2-rab
- YII2 前后台用户分离
JunChow520
后台隶属于系统管理员登录范畴,此处使用admin表作为基础,其基础字段与user表保持一致。后台登录模块采用独立模型和表单模型来完成。1.创建后台管理员表详情参见:“账户管理”2.修改后台主配置文件/backend/config/main.php'components'=>['request'=>['csrfParam'=>'_csrf-backend',],'user'=>['identityC
- 关于Yii2基础controller和model的封装
浪里小韭菜
数据库phpyii
如题,在实战项目中我们我们经常会要使用相同的逻辑,比如post/get获取参数,接口返回、参数校验等,因此可以将其封装起来调用。这里分为根目录下的控制器controllers和处理数据库的models两个文件,其他业务逻辑放在modules模块中一、根目录下controllers//BaseController.phproute=Yii::$app->requestedRoute;Yii::inf
- Yii2关于urlManager美化配置
浪里小韭菜
phpyii
如题,为了api更加符合restful风格需要配置//url美化'urlManager'=>['enablePrettyUrl'=>true,'showScriptName'=>false,'enableStrictParsing'=>false,'rules'=>[//['class'=>'yii\rest\UrlRule','controller'=>['login']],//方法一:针对特定
- Yii2.x Modules 配置 RESTful api 使用
胡乱唱歌ing
配置giiconfig/main-local.phpif(!YII_ENV_TEST){//configurationadjustmentsfor'dev'environment$config['bootstrap'][]='debug';$config['modules']['debug']=['class'=>'yii\debug\Module',];$config['bootstrap'][
- 【PHP】查询用户的直推、非直推、二级、三级、团队人数示例
zzoood
phpmysqlyii2php
目录1.构建公共函数,命名为team2.使用方法,以yii2为例首先在你的user表需要有一个字段串联推荐关系,如:我的id是666上级关系字段是superior字段值是:333_222_111或333,222,1111.构建公共函数,命名为teamandWhere("$columnREGEXP'^{$uid}_'");}elseif($level==2){//非直推$this->andWhere
- Yii2基于header实现版本控制
killtl
Yii2官方给出的方案是基于url的版本控制,但是我们的versoin放在header里面,需要通过header来进行版本控制,实现如下:首先在基类中实现actions,actions是针对controller的action扩展,看源码可以知道,在createAction中会先检查actionMap,而actionMap=actions(),也就是说actions里面的配置优先于controlle
- Nginx负载均衡
510888780
nginx应用服务器
Nginx负载均衡一些基础知识:
nginx 的 upstream目前支持 4 种方式的分配
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比
- RedHat 6.4 安装 rabbitmq
bylijinnan
erlangrabbitmqredhat
在 linux 下安装软件就是折腾,首先是测试机不能上外网要找运维开通,开通后发现测试机的 yum 不能使用于是又要配置 yum 源,最后安装 rabbitmq 时也尝试了两种方法最后才安装成功
机器版本:
[root@redhat1 rabbitmq]# lsb_release
LSB Version: :base-4.0-amd64:base-4.0-noarch:core
- FilenameUtils工具类
eksliang
FilenameUtilscommon-io
转载请出自出处:http://eksliang.iteye.com/blog/2217081 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
- xml文件解析SAX
不懂事的小屁孩
xml
xml文件解析:xml文件解析有四种方式,
1.DOM生成和解析XML文档(SAX是基于事件流的解析)
2.SAX生成和解析XML文档(基于XML文档树结构的解析)
3.DOM4J生成和解析XML文档
4.JDOM生成和解析XML
本文章用第一种方法进行解析,使用android常用的DefaultHandler
import org.xml.sax.Attributes;
- 通过定时任务执行mysql的定期删除和新建分区,此处是按日分区
酷的飞上天空
mysql
使用python脚本作为命令脚本,linux的定时任务来每天定时执行
#!/usr/bin/python
# -*- coding: utf8 -*-
import pymysql
import datetime
import calendar
#要分区的表
table_name = 'my_table'
#连接数据库的信息
host,user,passwd,db =
- 如何搭建数据湖架构?听听专家的意见
蓝儿唯美
架构
Edo Interactive在几年前遇到一个大问题:公司使用交易数据来帮助零售商和餐馆进行个性化促销,但其数据仓库没有足够时间去处理所有的信用卡和借记卡交易数据
“我们要花费27小时来处理每日的数据量,”Edo主管基础设施和信息系统的高级副总裁Tim Garnto说道:“所以在2013年,我们放弃了现有的基于PostgreSQL的关系型数据库系统,使用了Hadoop集群作为公司的数
- spring学习——控制反转与依赖注入
a-john
spring
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。依赖注入应用比较广泛。
- 用spool+unixshell生成文本文件的方法
aijuans
xshell
例如我们把scott.dept表生成文本文件的语句写成dept.sql,内容如下:
set pages 50000;
set lines 200;
set trims on;
set heading off;
spool /oracle_backup/log/test/dept.lst;
select deptno||','||dname||','||loc
- 1、基础--名词解析(OOA/OOD/OOP)
asia007
学习基础知识
OOA:Object-Oriented Analysis(面向对象分析方法)
是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。OOA与结构化分析有较大的区别。OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。
OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)
- 浅谈java转成json编码格式技术
百合不是茶
json编码java转成json编码
json编码;是一个轻量级的数据存储和传输的语言
在java中需要引入json相关的包,引包方式在工程的lib下就可以了
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非
常适合于服务器与 JavaScript 之间的数据的交
- web.xml之Spring配置(基于Spring+Struts+Ibatis)
bijian1013
javaweb.xmlSSIspring配置
指定Spring配置文件位置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-dao-bean.xml,/WEB-INF/spring-resources.xml,
/WEB-INF/
- Installing SonarQube(Fail to download libraries from server)
sunjing
InstallSonar
1. Download and unzip the SonarQube distribution
2. Starting the Web Server
The default port is "9000" and the context path is "/". These values can be changed in &l
- 【MongoDB学习笔记十一】Mongo副本集基本的增删查
bit1129
mongodb
一、创建复本集
假设mongod,mongo已经配置在系统路径变量上,启动三个命令行窗口,分别执行如下命令:
mongod --port 27017 --dbpath data1 --replSet rs0
mongod --port 27018 --dbpath data2 --replSet rs0
mongod --port 27019 -
- Anychart图表系列二之执行Flash和HTML5渲染
白糖_
Flash
今天介绍Anychart的Flash和HTML5渲染功能
HTML5
Anychart从6.0第一个版本起,已经逐渐开始支持各种图的HTML5渲染效果了,也就是说即使你没有安装Flash插件,只要浏览器支持HTML5,也能看到Anychart的图形(不过这些是需要做一些配置的)。
这里要提醒下大家,Anychart6.0版本对HTML5的支持还不算很成熟,目前还处于
- Laravel版本更新异常4.2.8-> 4.2.9 Declaration of ... CompilerEngine ... should be compa
bozch
laravel
昨天在为了把laravel升级到最新的版本,突然之间就出现了如下错误:
ErrorException thrown with message "Declaration of Illuminate\View\Engines\CompilerEngine::handleViewException() should be compatible with Illuminate\View\Eng
- 编程之美-NIM游戏分析-石头总数为奇数时如何保证先动手者必胜
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class Nim {
/**编程之美 NIM游戏分析
问题:
有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA...的顺序不断轮流取石头,
能将剩下的石头一次取光的玩家获胜,每次取石头时,每个玩家只能从若干堆石头中任选一堆,
- lunce创建索引及简单查询
chengxuyuancsdn
查询创建索引lunce
import java.io.File;
import java.io.IOException;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Docume
- [IT与投资]坚持独立自主的研究核心技术
comsci
it
和别人合作开发某项产品....如果互相之间的技术水平不同,那么这种合作很难进行,一般都会成为强者控制弱者的方法和手段.....
所以弱者,在遇到技术难题的时候,最好不要一开始就去寻求强者的帮助,因为在我们这颗星球上,生物都有一种控制其
- flashback transaction闪回事务查询
daizj
oraclesql闪回事务
闪回事务查询有别于闪回查询的特点有以下3个:
(1)其正常工作不但需要利用撤销数据,还需要事先启用最小补充日志。
(2)返回的结果不是以前的“旧”数据,而是能够将当前数据修改为以前的样子的撤销SQL(Undo SQL)语句。
(3)集中地在名为flashback_transaction_query表上查询,而不是在各个表上通过“as of”或“vers
- Java I/O之FilenameFilter类列举出指定路径下某个扩展名的文件
游其是你
FilenameFilter
这是一个FilenameFilter类用法的例子,实现的列举出“c:\\folder“路径下所有以“.jpg”扩展名的文件。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
- C语言学习五函数,函数的前置声明以及如何在软件开发中合理的设计函数来解决实际问题
dcj3sjt126com
c
# include <stdio.h>
int f(void) //括号中的void表示该函数不能接受数据,int表示返回的类型为int类型
{
return 10; //向主调函数返回10
}
void g(void) //函数名前面的void表示该函数没有返回值
{
//return 10; //error 与第8行行首的void相矛盾
}
in
- 今天在测试环境使用yum安装,遇到一个问题: Error: Cannot retrieve metalink for repository: epel. Pl
dcj3sjt126com
centos
今天在测试环境使用yum安装,遇到一个问题:
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将baseurl的注释取消, mirrorlist注释掉。即可。
&n
- 单例模式
shuizhaosi888
单例模式
单例模式 懒汉式
public class RunMain {
/**
* 私有构造
*/
private RunMain() {
}
/**
* 内部类,用于占位,只有
*/
private static class SingletonRunMain {
priv
- Spring Security(09)——Filter
234390216
Spring Security
Filter
目录
1.1 Filter顺序
1.2 添加Filter到FilterChain
1.3 DelegatingFilterProxy
1.4 FilterChainProxy
1.5
- 公司项目NODEJS实践0.1
逐行分析JS源代码
mongodbnginxubuntunodejs
一、前言
前端如何独立用nodeJs实现一个简单的注册、登录功能,是不是只用nodejs+sql就可以了?其实是可以实现,但离实际应用还有距离,那要怎么做才是实际可用的。
网上有很多nod
- java.lang.Math
liuhaibo_ljf
javaMathlang
System.out.println(Math.PI);
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1));
System.out.println(Math.abs(111111111));
System.out.println(Mat
- linux下时间同步
nonobaba
ntp
今天在linux下做hbase集群的时候,发现hmaster启动成功了,但是用hbase命令进入shell的时候报了一个错误 PleaseHoldException: Master is initializing,查看了日志,大致意思是说master和slave时间不同步,没办法,只好找一种手动同步一下,后来发现一共部署了10来台机器,手动同步偏差又比较大,所以还是从网上找现成的解决方
- ZooKeeper3.4.6的集群部署
roadrunners
zookeeper集群部署
ZooKeeper是Apache的一个开源项目,在分布式服务中应用比较广泛。它主要用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步、集群管理、配置文件管理、同步锁、队列等。这里主要讲集群中ZooKeeper的部署。
1、准备工作
我们准备3台机器做ZooKeeper集群,分别在3台机器上创建ZooKeeper需要的目录。
数据存储目录
- Java高效读取大文件
tomcat_oracle
java
读取文件行的标准方式是在内存中读取,Guava 和Apache Commons IO都提供了如下所示快速读取文件行的方法: Files.readLines(new File(path), Charsets.UTF_8); FileUtils.readLines(new File(path)); 这种方法带来的问题是文件的所有行都被存放在内存中,当文件足够大时很快就会导致
- 微信支付api返回的xml转换为Map的方法
xu3508620
xmlmap微信api
举例如下:
<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid><