摘要:Trait 是从 PHP 5.4 加入的一种细粒度代码复用的语法。以下是官方手册对 Trait 的描述:Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 Mixin 类相关典型问题。Trait ...
阅读全文
摘要:laravel 框架大量使用了traits. 简单举几个例子:在Eloquent中使用了trait 。然后在model初始化的时候,有个boot方法,会自动判断当前的类用了哪些trait。然后得到一个数组。程序会遍历这个数组,寻找有没有符合 "bootTraitName"的方法(在trait中定义),如果有就执行。/** * Boot all of the bootable traits on t...
阅读全文
摘要:PHP 5.4中的traits,是新引入的特性,中文还真不知道如何准确翻译好。其实际的目的,是为了有的场合想用多继承,但PHP又没多继承,于是就发明了这样的一个东西。 Traits可以理解为一组能被不同的类都能调用到的方法集合,但Traits不是类!不能被实例化。先来例子看下语法:?1234567891011121314151617 traitMethod1 ();$obj-> tra...
阅读全文
摘要:本文实例讲述了Laravel中Trait的用法。分享给大家供大家参考,具体如下:看看PHP官方手册对Trait的定义:自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 traits。Traits 是一种为类似 PHP 的单继承语言而准备的代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用方法集。Traits 和类组合的语义是定义...
阅读全文
摘要:Trait是PHP 5.4引入的新概念,看上去既像类又像接口,其实都不是,Trait可以看做类的部分实现,可以混入一个或多个现有的PHP类中,其作用有两个:表明类可以做什么;提供模块化实现。Trait是一种代码复用技术,为PHP的单继承限制提供了一套灵活的代码复用机制。为什么使用TraitPHP语言使用一种典型的单继承模型,在这种模型中,我们先编写一个通用的根类,实现基本的功能,然后扩展这个根类,...
阅读全文
摘要:trait 是在PHP5.4中为了方便代码复用的一种实现方式,但目前我在看的的PHP项目中较少看的有程序员去主动使用这个实现方式,在laravel中有很多 trait 的使用,关于trait 在 laravel 的使用请参看 Laravel 在哪些地方用了 trait?我曾在 Laravel 中大型项目面向对象架构 引用分享过一个他人的架构设计实践,在他的实践中大量使用了依赖注入。这是一种可行的方...
阅读全文
摘要:作者:mrcn链接:https://www.zhihu.com/question/35537084/answer/181734431来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。初始化部署:git clone git@...#克隆仓库获得代码chown -R www:www * #这里设置为nginx/Apache的实际的用户组,不知道是什么就删掉这行吧 chmod...
阅读全文
摘要:你是否听说过单一职责原则(single responsibility principle)?我希望是的。它是程序设计的基本原则之一,它基本上的意思就是,一个类有且只有一个职责。换句话说,一个类必须且只能做一件事,而不做其他任何事。通常,当你构建软件的第一个版本时,一切都好说。但总会发生下面的情况。你的老板会说:是时候推出一些新的功能了。尤其是当更新意味着在这里插入一些额外的行为的时候,你的代码库会...
阅读全文
摘要:前言最近开发新的项目不是基于完整的 laravel 框架,框架是基于 laravel ORM 的简单MVC模式。随着项目的成熟和业务需求,需要引入事件机制。简单地浏览了一下 symfony、laravel 的事件机制,都是依赖于 container 的。感觉如果引入的话开销有点大,在寻觅更好解决方案过程中发现 ORM 居然自带事件机制,完全足够目前的业务需求,又不需要改动框架,简直不能太棒!这里简...
阅读全文
摘要:临时添加 IP 地址首先,让我们找到网卡的 IP 地址。在我的 Ubuntu 15.10 服务器版中,我只使用了一个网卡。运行下面的命令找到 IP 地址:复制代码代码如下:sudo ip addr样例输出:复制代码代码如下:1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00...
阅读全文
摘要:在编写 PHP 应用时经常需要处理日期和时间,这篇文章带你了解一下 Carbon – 继承自 PHP DateTime 类的 API 扩展,它使得处理日期和时间更加简单。Laravel 中默认使用的时间处理类就是 Carbon。1 安装通过 Composer 来安装 Carbon:composer require nesbot/carbon1PS:由于 Laravel 项目已默认安装了此包,所以不...
阅读全文
摘要:关于图形界面的配置,我这里就不多介绍了,这个很简单。这里介绍的是如何通过修改配置文件来实现虚拟网卡。 首先介绍ubuntu(我这里使用的是ubuntu-16.04)下虚拟网卡的配置1、先用ifconfig查看当前的网卡配置ens33 Link encap:以太网 硬件地址 02:0c:29:c6:be:c7 inet6 地址: fe80::20c:29ef:fec...
阅读全文
摘要:1 配置远程访问1.1 修改 my.cnf [mysqld] 段bind-address = 0.0.0.0 //支持所有 ipv41.2 建立远程访问用户mysql> grant all privileges on *.* to root@'%' identified by "root";mysql> flush privileges;2 取消域名解析2.1 修改 my.cnf [mysqld...
阅读全文
摘要:Html 部分:aae_id}}" data-title="{{$item->aae001}}" data-href="{{$item->aae005_note}}" data-icon-cls="{{$item->aae006}}">链接文本Javascript 部分:$(function () { var $tabs = $($('body').data('tabs')); $...
阅读全文
摘要:1、安装composer require maatwebsite/excel 之后,程序中就可以使用 PHPExcel 了2、控制器中public function export(Request $request){ $Excel = new \PHPExcel(); $Excel->setActiveSheetIndex(0); $sheet = $Excel->getActi...
阅读全文
摘要:原创 2017年06月24日 20:24:311229文章采集与网上方式1。使用原生的phpexcel ,http://blog.csdn.net/CSwfe/article/details/52748046?locationNum=11、在app目录下创建一个新的文件夹,命名libs(可自定义) app/libs/phpExcel2、(可选)考虑到后面可能会引用很多库,so,在libs下再创建...
阅读全文
摘要:原创 2016年09月04日 21:44:1456641.使用su安装sudo$su#apt-get install sudo122.给账户设置管理员权限#vim /etc/sudoers13.添加一行,其中”username”替换为登陆账户的名称,输入时不加引号"username" ALL=(ALL) ALL
阅读全文
摘要:由 SHUIJINGWAN · 2017/11/241、composer install 时,提示:Package yiisoft/yii2-codeception is abandoned, you should avoid using it. Use codeception/codeception instead.,如图1图12、执行命令:composer show -s,仅列出当前项目信息,...
阅读全文
摘要:文件系统格式centos7缺省是xfs,centos6缺省是ext4,centos5缺省是ext3ext3 文件数最大支持31998个,文件系统容量最大16TB,单个文件最大2TBext4 文件数最大无限制,文件系统容量最大1EB(1EB=1024PB,1PB=1024TB)),单个文件最大16TB具体还和系统inode(索引节点)数量有关,即使磁盘有剩余空间,这个 inode 满了也无法写入文件...
阅读全文
摘要:标签: mount nfs export2014年08月07日 18:46:247472人阅读 评论(0) 收藏 举报 分类:文件系统(10) 版权声明:本文为博主原创文章,未经博主允许 http://blog.csdn.net/u010979030/article/details/38423329如果系统中没有这个命令:mount.nfs,请安装这个包:nfs-common问题一:# moun...
阅读全文
摘要:Posted on 2015年9月11日 by 学院君1、初始化Application1.1 注册基本绑定app -> Application实例(Illuminate\Foundation\Application)Illuminate\Container\Container -> Application实例(Illuminate\Foundation\Application)1.2 注册基本...
阅读全文
摘要:Posted on 2018年3月5日 by 学院君简介当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。这篇文档的目标就是从更高层面向你阐述 Laravel 框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信地构建应用。如果你不能马上理解所有这些条款,不要失去信心...
阅读全文
摘要:可以直接设置input标签的accept属性来限制上传文件的类型accept属性列表121.accept=”application/msexcel”2.accept=”application/msword”3.accept=”application/pdf”4.accept=”application/poscript”5.accept=”application/rtf”6.accept=”appl...
阅读全文
摘要:在linux下有两种方法来让一个命令或者脚本执行:crontab : 执行一个任务一次或者多次.at : 只执行一次.crontab是通过读取一个crontab文件来工作,这是一个普通的文本文件,里面列出了要执行的任务。每行都含有要指定的任务的命令、参数与选项,以及要执行任务的时间。(cron 软件在后台运行并且经常检查 /etc/crontab 文件。cron 软件也检查 /var/cron/t...
阅读全文
摘要:最近漏洞新闻层出不穷,作为一名技术人员,我们在注意自身文件安全的同时更要学会如何防护漏洞,同时这也是企业安全策略的重要组成部分。本文将介绍 10 款开源的漏洞检测工具,以供开发者们参考选择。1、Java自动化SQL注入测试工具 jSQLjSQL是一款轻量级安全测试工具,可以检测SQL注入漏洞。它跨平台(Windows, Linux, Mac OS X, Solaris)、开源且免费。2、漏洞评估系...
阅读全文
摘要:命令:#rsync –avz foo/ bar/意义:将 foo 目录之下的所有内容,同步到 bar 目录之下。如果不以斜杠结尾,意义就不同了。
阅读全文
摘要:前端报跨域错误:Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8080' is therefore not a...
阅读全文
摘要:1、配置本地化语言Laravel 的本地化语言配置项位于config/app.php:[php] view plain copy 'locale' => 'zh',//当前语言'fallback_locale' => 'en',//备用语言2、创建翻译文件翻译文件所在目录为resources/lang,在此创建 zh/auth.php文件[php] view plain copy return...
阅读全文
摘要:MySQL数据库自身提供的主从复制功能可以方便的实现数据的多处自动备份,实现数据库的拓展。多个数据备份不仅可以加强数据的安全性,通过实现读写分离还能进一步提升数据库的负载性能。下图就描述了一个多个数据库间主从复制与读写分离的模型(来源网络):在一主多从的数据库体系中,多个从服务器采用异步的方式更新主数据库的变化,业务服务器在执行写或者相关修改数据库的操作是在主服务器上进行的,读操作则是在各从服务器...
阅读全文
摘要:Laravel 提供了很多 辅助函数,有时候我们也需要创建自己的辅助函数。 必须 把所有的『自定义辅助函数』存放于 bootstrap 文件夹中。 并在 bootstrap/app.php 文件的最顶部进行加载:
阅读全文
摘要:众所周知,Javascript 在进行浮点数运算时,结果会非预期地出现一大长串小数。解决:如果变量 result 是计算结果,则在返回时这样写,return result.toFixed(2); //结果保留两位小数
阅读全文
摘要:生命周期示意图值得注意的几个钩子函数activated类型:Function详细:keep-alive 组件激活时调用。该钩子在服务器端渲染期间不被调用。参考:构建组件 - keep-alive动态组件 - keep-alivedeactivated类型:Function详细:keep-alive 组件停用时调用。该钩子在服务器端渲染期间不被调用。参考:构建组件 - keep-alive动态组件 ...
阅读全文
摘要:1 router/index.js 中的定义{ path: '/product', component: ProductIndex, meta: { requiredAuth: true, }},2 category-link.vue 中的调用 {{item.caa001}}3 product-list.vue 中的响应let caa_id = this.$route.quer...
阅读全文
摘要:A:router路由配置 1 export default new Router({ 2 routes: [ 3 { 4 path: '/home', 5 name: 'Home', 6 component: Home, 7 children:[ 8 {path:'home1',component:Home1}, 9 ...
阅读全文
摘要:创建数据库create database abc;显示数据库show databases;使用数据库use 数据库名;直接打开数据库mysql -h localhost -u root -p123456 -d 数据库名显示表show tables;desc 表名;show columns from 表名;describe 表名;show create table 表名;use informatio...
阅读全文
摘要:2016年11月15日 · 2283次 · 4条 · laravel,package,charts介绍在项目开发中,创建图表通常是一件痛苦的事情。因为你必须将数据转换为图表库支持的格式传输到模板中,并且每个图表的插件库是不同的。如果需要替换图表插件的时候,我们就得重新处理数据结构。为了解决这一问题,一位名叫Erik Campobadal的开发人员创建了一个新的Laravel图表包来创建交互...
阅读全文
摘要:如:var params = {param1: ‘bar’,param2: ‘foo’};var queryString = $.param(params); // queryString = params1=bar¶m2=foo接下来组合 Url 就简单了:var url += ‘?’ + queryString;window.open(url);这种方法用来作文件下载非常方便。
阅读全文
摘要:1.安装 1>composer 安装 "maatwebsite/excel": "~2.1.0" 2>app/config/app.php,添加服务 Maatwebsite\Excel\ExcelServiceProvider::class 设置Facade: 'Excel' => Maatwebsite\Excel\Facad...
阅读全文
摘要:1.安装 1>composer 安装 "maatwebsite/excel": "~2.1.0" 2>app/config/app.php,添加服务 Maatwebsite\Excel\ExcelServiceProvider::class 设置Facade: 'Excel' => Maatwebsite\Excel\Facad...
阅读全文
摘要:localStorage和sessionStorage一样都是用来存储客户端临时信息的对象。他们均只能存储字符串类型的对象(虽然规范中可以存储其他原生类型的对象,但是目前为止没有浏览器对其进行实现)。localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。sessionStorage生命周期为当前窗口或标签页,一旦窗...
阅读全文