Yii2中Model中rules中自定义message无效的问题原因

今天在使用Yii2中的Model里面的rules规则的时候,希望验证规则不通过的时候出现自己自定义的提示信息。但是按照常规写法部分能按照自定义的语句提示(require integer...),但是对于有max min的就没有按照自定义的形式输出了。 经过查询相关资料以及Yii2的源码yii.validation.js里面有了新的定义tooLong tooShort tooBig tooSmall 等,和Yii1有一定的区别。 如果需要查看相关的....
  •   
  • 8664
  • PHP
  • 35
  • super_dodo
  • 2016/09/21

修改Yii2的默认语言language为中文zh-CN的方法

在开发Yii2的情况下,有时候遇到错误的情况下(例如model下面的错误提示信息),希望提示信息默认为中文,这个时候就需要修改Yii2的默认语言,最直观的方式是: //Yii2的默认的配置文件里面 $config = [ 'id' => 'basic', 'basePath' => dirname(__DIR__), 'language' => 'zh-CN', //全局设置为中文--推荐 ] 如果只针对局部的某一个控制器和....
  •   
  • 14007
  • PHP
  • 21
  • super_dodo
  • 2016/09/21

对于大数组查找某个值in_array和array_flip+isset的性能比较

假设有一个10万条记录的数组,需要查找某一个值是否存在该数组内.大多数情况下直接使用in_array这个PHP的自带函数,但是当这个数组很大和很复杂的时候,建议使用array_flip和isset的方式来提高性能. 首先来看一下PHP源码,从代码中可以看出while循环在遍历数组中的所有元素取值做对比,如果数组中元素特别多又频繁调用的时候,效率可想而知。 由于数组的键是放在Hash表的key中....
  •   
  • 5860
  • PHP
  • 10
  • super_dodo
  • 2016/09/21

获取PHP服务端的网卡MAC地址的方法

本意是想获得PHP客户端的用户的MAC的地址的,网上查找了一些资料,该篇幅先讲如何获得服务器端的MAC地址的方法和类。Windows下面比较容易,但是Linux下面因为权限的因素,可能坑多一些,希望各自尝试,或者给我提供好的方法和建议。直接上类文件和代码: <?php /** 获取网卡的MAC地址原码:目前支持WIN/LINUX系统 获取机器网卡的物理(MAC)地址 **/ class MacA....
  •   
  • 4637
  • PHP
  • 8
  • super_dodo
  • 2016/09/19

Yii2表单提交报错:unable to verify your data submission

Yii2在提交表单的时候遇到"Unable to verify your data submission" 这种情况,是因为Yii2的防止拦截了csrf攻击,你则不能提交的表单。如果你希望当前可以多次重复提交,或者你写的是API接口,可以在当前提交的表单controller中局部关闭csrf,不过需要注意对用户提交的数据进行安全性验证和过滤。 class ApiController extends Controller{ public $enableCsrfValidati....
  •   
  • 3941
  • PHP
  • 6
  • super_dodo
  • 2016/09/18

PHP+ajax+P3P实现多域名跨域登录

近期有一种想法和尝试,需要实现A域名用户与B域名用户的同步登录; 该同步登陆需求需满足以下三个关键点: 1.A域名下登陆的用户,跳转到B域名下时实现同步登陆; 2.B域名下点击A域名下的退出链接,实现A域名与B域名的同时退出 3.用户直接访问B域名时,可以自动判断A域名下是否存在用户登录,如果存在,则实现B域名下的用户同步登陆。 首先解决跨域的同步登陆登出,有以下可行的解....
  •   
  • 4692
  • PHP
  • 8
  • super_dodo
  • 2016/09/18

PHP的数组中如何根据某一个value值获取其key值

在一些PHP的场景之中可能会遇到,在PHP的数组中需要根据其中某一个value值来获取得到其key的值。这个时候我们就需要使用到PHP数组函数中的array_search()这个方法。使用方法如下: //array_search()的使用方法 $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); $key = array_search('green', $array); // $key = 2; $key = array_se....
  •   
  • 6027
  • PHP
  • 7
  • super_dodo
  • 2016/09/12

WordPress4.X取消自动保存和修订版本,让文章ID连续

WordPress的使用者可以发现,最大的文章ID要远大于文章总量,比如我的博客才700篇左右的文章,而ID已经超过3000了,对于某些强迫症患者,这绝对无法忍受,造成ID不连续或者过大倍数于总文章量的原因如下: 文章的自动保存,使用WordPress的默认编辑器,在编辑过程中,每隔一段时间就会保存一次,已防止数据丢失; 文章的修订版本,每当你修改文章时都会产生修订版本,而且....
  •   
  • 2693
  • PHP
  • 4
  • super_dodo
  • 2016/09/11

Yii2中配置使用连接多个数据库连接(config Model)

在使用Yii2开发的一些项目中需要调用多个数据库,这个时候我们就需要在model里面和在配置文件里面增加一些方法,使我们的model类能直接便捷的切换不同的数据库。 在你的配置文件下面新建一个远程数据库链接的配置文件。例如 config/remote_db.php return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=dodobook_net', 'username....
  •   
  • 9757
  • PHP
  • 9
  • super_dodo
  • 2016/08/18

PHP实现10进制和64进制的相互转换的方法

紧接着上一篇,上一篇是使用php自带的方法实现网址的短链接的方法base_convert() 函数在任意进制之间转换数字。为了更大的容量,有些同学可能更希望转换成更短的64位的大小写区分的URL链接。所以此处找了一个10进制和64进制之间的转换。请直接看代码。自行调用研究使用。
  •   
  • 7052
  • PHP
  • 8
  • super_dodo
  • 2016/08/16