PHPerzh 为您找到相关结果 1151

PHP laravel系列之bootstrap美化

开始 在前面的11章教程中,我们并没有使用 bootstrap 这也是处于对降低门槛方面的考虑,事实上,Laravel 已经默认集成了 bootstrap 框架,我们很容易就能使用它 bootstrap 是世界上使用最广泛的前端框架之一,它提供了一套简介、精美的UI组件,几乎涵盖了网站上常用的所有功能,如果你的应用对样式的要求不是特别高,使用 bootstrap 将是最好的选择 基础知识介绍 bootstrap 百度百科对 bootstrap 的介绍 Bootstrap,来自 Twitter,是目前很受欢迎的前端框架。 Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。 它由Twitter的设计师Mark Otto和Jacob T...阅读全文

博文 2017-09-05 04:01:31 u014665013

laravel框架关联的模型怎么加入筛选条件

比如:商品模型关联评论模型,要给商品模型家条件很简单,在控制器里直接写就行了,但是要给关联的评论模型加筛选条件,该怎么加 protected $table = "wd_yylm_goods"; public function evaluate() { return $this->hasOne('App\Http\Model\EvaluateModel','good_id','id')->where('status',0); } 在商品模型里面定义关联关系的时候,后面加入where条件,就是你想要...阅读全文

博文 2017-06-14 17:00:32 hanshuai0921

Laravel模型基础上增加before、after事件方法

Laravel框架本身没有自带beforeSave、afterSave的方法事件,但是可以自行加上这些,类似Yii框架,本身就自带这些方法,这类方法就像一个事件、触发器,可以在模型save之前,做一些属性值改变或者更多逻辑补充。 列举一下可以增加哪些before/after事件方法 before/afterCreate() before/afterSave() before/afterUpdate() before/afterDelete() before/afterValidate() 如何给Model增加这些方法呢? 首先要给所有model定义一个基类,然后所有model都继承这个基类, 阅读全文

博文 2017-06-14 17:10:36 树懒在编码

RBAC权限管理

简介 RBAC基于角色的权限访问控制(Role-Based Access Control)是商业系统中最常见的权限管理技术之一。RBAC是一种思想,任何编程语言都可以实现,其成熟简单的控制思想 越来越受广大开发人员喜欢。在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。 日常生活中的权限 权限的作用 使用者的角度 权力:正确的行驶权力 限制:在限制范围内使用权力 设计者的角度 安全:控制不同的角色合理的访问不同的资源 对于我...阅读全文

博文 2017-10-23 15:04:56 从O开始

如何实现PHP异步调用或者说并行计算

需求 当一个用户给多个好友发送邀请邮件时,当一个请求需要从很多个数据库中读取数据时,当一个页面需要大量计算又想快速响应时,我们都希望php能够做到异步执行, 即并发地发邮件,并行地从多个数据库取数据,并行的计算业务逻辑,从而能够快速的响应用户,不必让用户苦等。 需求分解 仔细想下群发邮件、并行的从数据库中取数据、并行计算业务逻辑这些需求又都有不同,所以这里php异步并行需要区别对待。 1、群发邮件。此类需求一般不需要等所有邮件都发送完毕才给用户返回,所以是一种需要处理但不用立刻返回的需求 2、并行取数据。此类需求和群发邮件不一样,用户需要这些数据都从存储中取到了才能返回,是一种IO密集型的需求 3、并行计算。此类需求又与前两者不一样,因为不止是并行取数据和等待结果,重要的是大量的并行计算,是...阅读全文

博文 2017-09-13 15:02:21 花花世界欢乐多

laravel cookie加密解密原理

通过控制台的 cookie 信息我们会发现,每次请求之后,关键的 cookie,如PHPSESSID、XSRF-TOKEN 都会发生变化,并且都是很长的一串字符串。 其实这是一个 json 数组,其中包含了 iv,value,mac 三个字段: 这些字段都是在框架加密解密的时候使用的,加密方法是 openssl_encrypt: 对 openssl 不太了解的可以看下下面的例子: $data = 'laravel'; $iv = random_bytes(16); $key = 'this is key'; $encrypt = openssl_encrypt($data, 'AES-256-CBC', $key, 0, $iv); var_dump($encrypt); var_dump(...阅读全文

博文 2018-01-15 08:00:32 eleven24

APP接入支付宝方法总结——服务器端(PHP)

准备工作APP支付接口:alipay.trade.app.pay服务器端使用框架:PT5登录蚂蚁金服开放平台 --> 创建应用 --> 添加App支付功能。具体查看官方文档下载官方 SDK (PHP版本资源)——当前SDK版本:106 生成时间:2017-07-25 11:46:10将SDK原码放置在PT5的vendor目录下的alipay文件夹(可根据实际使用框架技术进行实际调整)。支付接口调用原理1、APP支付系统架构 APP支付系统架构图 2、数据校验原理 数据校验原理 应用公钥(商户自身的RSA公钥):支付宝使用该公钥验证该交易是商户发起。支付宝公钥(支付宝的RSA公钥):商户使用该公钥验证该结果是支付宝返回的。3、系统交互流程 系统交互流程图 4、支付场景具体实现流程(最详细图解)...阅读全文

博文 2017-08-16 02:04:17 Nosee123

Alpaca-Laravel 框架(二) --- 集成GateWay实现WebSocket功能-聊天功能示例

概述 本文主要介绍Alpaca-Laravel框架集成GateWayWorker实现WebSocket功能,并且以一个简单的聊天室作为示例。Alpaca-Laravel框架是使用Alpaca-spa与Laravel前开端分离开发的一款快速开发框架,集成了用户管理,权限控制等功能,详情请阅读《Alpaca-Laravel 框架(一) --- 概述,前后分离的后台管理系统》。 项目相关代码以及文档地址 | 内容 | 说明 | 地址 | | ------------ | ------------ | ------------ | | 主页 | Alpaca-Spa | http://www.tkc8.com | | 后台 | Alpaca-Spa-Laravel | http://full.tkc...阅读全文

博文 2017-09-01 12:02:37 大弹簧

深谈关于oneinstack的创建 WEB 虚拟主机执行脚本: ./vhost.sh

关于创建虚拟主机来说对于我们这些后台程序猿来说应该算是要掌握的一种技能吧,然后我在这里讲的是oneinstack的LAMP模式好,废话不多说了,赶紧秀操作吧~~首先是去oneinstack的目录下打开命令行:sudo ./vhost.sh 看到这个页面就行了,这里是问你是否设置Nginx SSL(需要提供域名证书),无https要求建议选n,我是选了n~(*^__^*) 嘻嘻…… 然后就是设置虚拟主机域名了,这里倒是随便你填,我这里做个示范就是这么做了~~然后就是按两次回车看到如下图为止: 然后这里就是问你需要是否需要添加多个域名或ip来访问同一个网站根目录,怎么说呢,随你们吧,多一个域名来访问也是一样的~~ 当然了,我为了示范还是毅然选了y,然后就再填一个域名,这个就可以稍微简单点,主要用...阅读全文

博文 2017-07-27 12:04:42 zero风来

Elasticsearch-PHP api简介

Elasticsearch 是目前流行的大数据处理框架之一,详细的说明可以自行百度等.以下文章采用es缩写作为代表Elasticsearch es有官方的php api接口,可以采用github下载或者composer. 1.创建索引($client->indices()->create()) $params = [ 'index' => 'user_index', //索引名(相当于mysql的数据库) 'body' => [ 'mappings' => [ 'normal_type' => [ //类型名(相当于mysql的表) '_all'=>[ // 是否开启所有字段的检索 'enabled' => 'false' ], 'properties' => [ //文档类型设置(相当于m...阅读全文

博文 2017-06-27 15:06:17 汤敏正

Laravel框架下的依赖注入和反射应用

依赖注入,简单说是把类里头依赖的对象,置于类外头,即客户端调用处。相当于把类与类解耦。 一个简单的例子: class A { public function __construct() { // 这种实例化写法, A类的内部,依赖了B类 需要解耦 $this->b = new B(); } public function say(){ $this->b->talk(); } } class B{ public function __construct() { } public function talk(){ echo __METHOD__; } } $a = new A; $a->say(); A类依赖B类,耦合较重。 换一种写法: class A { public function __...阅读全文

博文 2017-12-04 23:00:31 firstForEver

为PhpStorm添加Laravel 代码智能提示功能

PhpStorm 默认情况下是没有对Laravel框架的代码提示功能的,下面给出Laravel 5 在PhpStorm 2017.1版本下的安装过程。 1.安装laravel插件 2. 应用 composer 安装 barryvdh/laravel-ide-helper 2.1 右键打开composer 搜索laravel-ide-helper 2.2 安装aravel-ide-helper 找到barrvdh/laravel-ide-helper 进行安装,需要花一些时间进行文件下载。 2.3 配置模块 安装成功后,在 项目中的 conifg/app.php 的providers的数组中添加类的支持 Barryvdh\LaravelIdeHelper\IdeHelperServicePro...阅读全文

博文 2017-06-14 16:55:55 ruglcc

Laravel记录一之修改器和访问器

最近在给前端写API的时候,需要处理前端传过来的附件。由于架构的原因,不能使用本地存储,或者文件存储之类的,更不能使用类似于“fopen”这样的函数来处理(当然,我不是看不起他们)。项目目前是前后端完全分离的,前端采用的是Vue,而后端接口采用的是Laravel的阉割版—lumen框架。 于是这里附件的存储和传输就采用了阿里云OSS(当然了,这也没有什么技术含量,看看文档什么的就能搞定的)。在前端选择图片之后调取集成了阿里OSS的接口,直接上传并进行云存储。在前端存储之后,回返回一个对象数组,这个对象数字里就含有大量的附件保存的信息,包括数据库存储和阿里OSS的存储信息。于是在我们重新得到这个信息包的时候就很麻烦了,因为没有相应的字段来存储,所以这个时候就需要用到修改器和访问器了(参考lar...阅读全文

博文 2017-12-16 14:02:35 一片枫叶ing

Python的面试题大全

利用闲暇时间,将网上所有关于Python的面试题做一做,不会的使用Google搜索了一下,整理学习,也为方便大家不用再东找西找 注: 持续保持更新状态,答案更新的字体会加黑加粗 1. Python的函数参数传递 a = 10 b = 20 def fun(a, b): print('func_in', id(a), id(b)) a = 5 print('new_in', id(a), id(b)) c = a + b return c print('func_out', id(a), id(b)) print fun(2, 3) 参数是通过assignment来传递的. 1.传递的参数实际上是内存中一个对象的引用(只不过通过值传递的) 2.一些数据类型是可变的,有些是不可变的 对象种类 类...阅读全文

博文 2017-09-21 00:04:11 happyshui

微信小程序上传图片,PHP-Laravel框架实现

流程概述: 利用微信小程序自带的wx.uploadFile方法,将文件post 到服务器API接口,接受内容,保存 文档地址 https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-file.html image.png 为什么实例里边没有将 content-type 为 multipart/form-data 放进去呢,想不懂 image.png 直接上代码 js 文件 /选择上传图片 bindUploadTap:function(){ let that = this wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩...阅读全文

博文 2017-08-11 11:04:57 浪来了2016

laravel 门面模式

最近在学习laravel框架的各种设计原理,今天看到门面模式这了,做下笔记: Facade 工作原理 在 Laravel 应用中,门面就是一个为容器中对象提供访问方式的类。该机制原理由 Facade 类实现。Laravel 自带的门面,以及我们创建的自定义门面,都会继承自 Illuminate\Support\Facades\Facade 基类。 门面类只需要实现一个方法:getFacadeAccessor。正是 getFacadeAccessor 方法定义了从容器中解析什么。然后 Facade 基类使用魔术方法 __callStatic() 代理门面上静态方法的调用,并将其交给通过 getFacadeAccessor 方法定义的从容器中解析出来的服务类来执行。 在config/app.ph...阅读全文

博文 2018-07-27 15:00:35 tudou1223

laravel自定义分页模版

laravel自身paginate()等分页的样式比较简单,而且生成的html只支持 Bootstrap CSS。 1、简单粗暴的修改 laravel5.4里面分页样式模版在目录与文件是: \vendor\laravel\framework\src\Illuminate\Pagination\resources\views\default.blade.php 若想简单粗暴修改模版,直接修改default.blade.php的代码即可。 2、替换默认模版 本人不太愿意过多的去修改框架自身的代码。选择新建分页模版。 (1)创建替换blade模板 在 resources\views 目录创建分页模版。本人是再 resources\views\layouts 创建了 page.blade.php模版...阅读全文

博文 2017-08-29 10:02:39 jichun

PHP爬虫最全总结2-phpQuery,PHPcrawer,snoopy框架中文介绍

1.几种常用的PHP爬虫框架对比 1.1 phpQuery 优势:类似jquery的强大搜索DOM的能力。 pq()是一个功能强大的搜索DOM的方法,跟jQuery的$()如出一辙,jQuery的选择器基本上都能使用在phpQuery上,只要把“.”变成“->”,Demo如下(对应我的github的Demo5) html()."
"; } foreach($menu_a as $a){ echo...阅读全文

博文 2018-03-27 19:02:03 bengozhong

网上很多laravel中cookie的使用方法。

概述 Cookie的添加其实很简单,直接使用Cookie::make(),在使用方法前,需要引入Cookie的门面use Illuminate\Support\Facades\Cookie;,这样就可以完成Cookie的设置了(当然不引入直接 \Cookie 使用也能通过命名空间自动加载)。 不过,设置后我们如何才能取到Cookie值呢?有搜索过相关问题的开发人员肯定知道,网上的答案千篇一律都是:Cookie::get(),有的甚至附上了代码: Cookie::make('test', 'hello, world', 10); echo Cookie::get('test'); 如果你按照这种类似的回答来测试Cookie,肯定会发现设置cookie的值永远都是null。多次测试无效下,你都会...阅读全文

博文 2017-08-01 16:01:33 chen529834149

Lumen上使用Dingo/Api做API开发时用JWT-Auth做认证的实现

Lumen轻量级的框架,用来做API很合适,起码本人这么想。 做API,可以配合Dingo/Api来搞。 Dingo/Api可以使用的用户认证方式有: HTTP Basic (Dingo\Api\Auth\Provider\Basic)JSON Web Tokens (Dingo\Api\Auth\Provider\JWT)OAuth 2.0 (Dingo\Api\Auth\Provider\OAuth2) 这里选了JWT来实现。 需要用的工具有: LumenDingo/ApiTymon/JWT-Auth API可以简单的分三个部分: 登录验证具体的API行为 所以,先从登录开始。 这里的API服务基于Lumen实现。Laravel的实现还没搞过,以后再说。 一、Tymon/JWT-Auth...阅读全文

博文 2017-06-14 16:59:25 zzw6236056

PHP API ————基于Yaf框架 【一】

php api实现基础功能:扩展性 、稳定性 、性能 PHP常规实现基本api: 1、用户登陆注册接口。 2、文章类别接口。 3、一些接口实现方法。 4、邮件接口。 第三方能力整合系列接口: 1、短信 2、Push消息 3、IP地址转换 4、支付 5、其他 API的工程化建设及API性能优化: 1、如何对API项目的公共技术抽离,建立有层级的php api项目。 2、如何做好异常处理及监控,保障api高效稳定的提供服务。 3、如何进行api性能测试。 4、如何定位性能瓶颈。 5、如何解决接口QPS TPS问题。 知识提升: 1、掌握Restful api 接口的实现方法。 2、掌握php基本语法、基本库的使用 3、能够了解api的分层实现方法,即MVC的MC,View部分因为api不涉及。 ...阅读全文

博文 2017-08-31 11:02:06 麦可叔叔

CentOS 7安装laravel 5.5.28

1.安装Composer: https://getcomposer.org/ https://getcomposer.org/download/1.6.3/composer.phar 下载composer.phar:拷贝改名到/usr/local/bin/composer: mv composer.phar /usr/local/bin/composer 2. 安装 laravel: composer global require "laravel/installer" laravel 可执行文件安装在目录: /root/.config/composer/vendor/bin 在PATH 下添加路径$HOME/.config/composer/vendor/bin #echo "export...阅读全文

博文 2018-04-12 21:02:34 MichaelShu

【深圳南山】larveal实习大神等你来挑战

【谈理想】(www.forchange.cn) 我们这一代人,虽然经历了传统教育的洗礼,却远不及自己想要的样子,我们希望每个用户,透过我们写的代码,触及到未来那个更美好的自己。基于“更好的连接知识与人”的目标,我们创造了熊猫书院(十个月读书成长计划)、优势计划(围绕测试定制读书计划),在这个过程中获得了300万的迫切想要从教育中破茧而出的用户。 但即便如此,蜂拥而起的互联网+教育行业,依旧无法打破教育中,教育资源不均,市场规模、服务质量与学员体验之间难以平衡的天花板。 让教育与智能并行、让知识与用户匹配,让学习行为简单和快乐,才能实现知识分配的平等,自我提升的效能最大化。用先进的技术、敲写优雅的代码、创造模式识别的海量内容,为教育服务,为用户开拓一所让知识易学,易懂,易运用并受益终身的...阅读全文

laravel上传文件FTP驱动配置

FTP驱动配置 Laravel 的文件系统集成了 FTP 操作,不过,框架默认的配置文件 filesystems.php 并没有提供示例配置。如果你需要配置一个FTP文件系统,可以使用以下示例配置: 'ftp' => [ 'driver' => 'ftp', 'host' => 'ftp.example.com', 'username' => 'your-username', 'password' => 'your-password', // Optional FTP Settings... // 'port' => 21, // 'root' => '', // 'passive' => true, // 'ssl' => true, // 'timeout' => 30, ], 上面提供...阅读全文

博文 2018-03-09 15:00:33 yiweiyihang

php版本比较

当我打算安装laravel5.4框架时,服务器要求如下: image.png 然后我赶紧php -v查看了一下自己的php版本,发现是5.6.31. 我想着赶紧升级一下,结果到官网上找了半天都没有找到php5.6.4版本。。。 在百度google的过程中偶然发现大佬们的经验: php 语言专门提供了一个 version_compare 函数用于比较 php 不同版本的新旧,其函数的原型定义如下: mixed version_compare ( string $version1 , string $version2 [, string $operator ] ) 如果给定的两个版本,在第一个版本低于第二个时,version_compare() 返回 -1;如果两者相等,返回 0;第二个版本更低...阅读全文

博文 2017-09-20 22:04:11 zizhan

PHP资源大全

ziadoz在 Github发起维护的一个PHP资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等等。伯乐在线对该资源列表进行了翻译,译文如下:依赖管理依赖和包管理库Composer/ Packagist:一个包和依赖管理器Composer Installers:一个多框架Composer库安装器Pickle:一个PHP扩展安装器其他的依赖管理其他的相关依赖管理Satis:一个静态Composer存储库生成器Composition:一个在运行时检查Composer环境的库Version:语义版本的解析和比较库NameSpacer-转化下划线到命名空间的库Patch Installer-使用Com...阅读全文

博文 2017-06-14 17:25:19 骚伦

Laravel 实战视频教程(精品)

课程简介: Laravel强大之处不仅仅在于它给你提供了一系列脚手架,比如超级好用的ORM,基于Carbon的时间处理,以及文件存储等等功能。更是因为它的设计,思想及可扩展性。所以在国外Laravel俨然已经成为最流行的PHP框架。然而为什么国内使用却不是很普遍那,其中一个重要的原因就是没有比较全、成系列的教程和文档。本课程是理论结合实践为大家讲述Laravel开发知识。目的在于让大家通过此课程的学习可以独立使用Laravel开发项目。 课程目的: 培养独立使用Laravel开发项目能力 课程要求: 有PHP开发经验 有PHP框架开发经验 笔记、作业完成 教学模式: 理论+实战+作业 课程建议: 建议先修课程 laravel入门课程(http://www.imooc.com/learn/69...阅读全文

博文 2017-08-01 16:01:33 sqc157400661

Carbon

Carbon是日期及时间处理包了,我们这里来看 日期及时间处理包在Laravel框架中的一些常用的使用。 在编写 PHP 应用时经常需要处理日期和时间,这篇文章带你了解一下 Carbon – 继承自 PHP DateTime 类的 API 扩展,它使得处理日期和时间更加简单。Laravel 中默认使用的时间处理类就是 Carbon。 namespace Carbon; class Carbon extends \DateTime { // code here } 你可以在 Carbon 命名空间的 Carbon 类中看到上面声明的代码片段。 安装 可以通过 Composer 来安装 Carbon: composer require nesbot/carbon PS:由于 Laravel 项目...阅读全文

博文 2017-11-01 11:04:37 手表大大

redis 设置密码 laravel框架配置redis

* 参考资料 redis文档 http://www.redis.cn/documentation.html, http://redisdoc.com/index.html redis桌面客户端 https://redisdesktop.com/download * 修改redis.conf 添加一行 requirepass "shi_kuretto" 去掉一行注释 bind 127.0.0.1 ::1 * 重启redis服务 lsof -i:6379 找到redis的进程id, kill COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEredis-ser 1573 Mch 4u IPv6 0xb521b0eb0f67f0ad 0t0 TCP...阅读全文

博文 2018-07-28 22:00:31 mingzhanghui

如何使用laravel搭建后台登录系统

今天想用laravel搭建一个后台系统,就需要最简单的那种,有用户登录系统,试用了下,觉得laravel的用户登录这块做的还真happy。当然,前提就是,你要的用户管理系统是最简单的那种,就是没有用户权限,能登录就好。 我这里就不用默认的user表做例子了,那样很容易和laravel的一些默认设置混淆。 首先确认,后台的用户表,我设计表叫做badmin,每个管理员有用户名(username),有昵称(nickname),有邮箱(email),有密码(password) 这里玩个花,使用laravel的migration来建立表(实际上可以用不着使用这个工具建立表) 1 安装好最基本的laravel框架 2 创建migration文件: ./artisan migrate:make creat...阅读全文

博文 2017-06-14 16:25:46 yjf512

atitit.项目设计模式---ioc attilax总结

atitit.项目设计模式---ioc attilax总结 1. .IOC的之前 1 2. ioc后的实现 1 3. 认识引入IOC框架的缺点, 2 4. 自己实现ioc 3 4.1. ioc框架的实现原理map+容器法 3 4.2. 每一个组件set法 3 4.3. 一种有用和优雅的来解决这些问题,是使用容器的依赖注入 3 4.4. 使用 vm 注入,隐藏注入,golbal 变量.. 4 5. php 与java的ioc框架实现的异同 4 6. Phalcon 的问题 4 7. 注入 Laravel 虚拟主机安装的问题 4 8. 淋巴::atiioc 5 9. 參考 5 1. .IOC的之前 我们知道在面向对象设计的软件系统中,它的底层都是由N个对象构成的。各个对象之间通过相互合作,终于实...阅读全文

博文 2017-07-04 00:00:31 wgwyanfs

码云推荐 | 适合新手学习的PHP优秀开源项目

1. 项目名称:轻量级 B2C 商城系统项目简介:本项目是一个拥有 PC 端 + H5 移动端的超轻量,功能强大的 B2C 商城系统。技术实现:核心框架:基于全新超轻量高性能Speed框架JS框架:jQuery 1.10.2移动端JS框架:Zepto 1.2.0图表库:Flot 0.8.3富文本编辑器:百度 精简版 UMeditorJS模板引擎:Juicer 0.6.8运行环境:操作系统: Windows / Linux / UnixWeb 服务器:Apache / Nginx / IISPHP 版本:5.2 及以上MySQL 版本:5.0 及以上生产环境推荐:Linux + Nginx + PHP5.5 + MySQL5.6项目地址:cigery/verydows - 码云2、项目名称:基...阅读全文

博文 2017-09-01 16:04:17 码云Gitee

Swift 4 踩坑 —— Codable 协议

WWDC 过去有一段时间了,最近终于有时间空闲,可以静下心来仔细研究一下相关内容。对于开发者来说,本届WWDC 最重要的消息还是得属 Swift 4 的推出。 Swift 经过三年的发展,终于在 API 层面趋于稳定。从 Swift 3 迁移代码到 Swift 4 终于不用像 2 到 3 那样痛苦了。这对开发者来说实在是个重大利好,应该会吸引一大批对 Swift 仍然处于观望状态的开发者加入。 另外 Swift 4 引入了许多新的特性,像是 fileprivate 关键字的限制范围更加精确了;声明属性终于可以同时限制类型和协议了;新的 KeyPath API 等等,从这些改进我们可以看到,Swift 的生态越来越完善,Swift 本身也越来越强大。 而 Swift 4 带来的新特性中,最让人...阅读全文

博文 2017-06-28 18:06:09 群星陨落

最终,为什么选择go-kit

前言工作这些年,先后经历过两家公司,分别参与过php语言框架的设计和主导过golang技术栈的落地工作,在此过程中有一些感悟和总结。我想以之前我主导的golang技术栈为线索,来陈述当时遇到的一些问题,以及分析问题和解决问题的思路。主要目的是想陈述golang技术体系在我们团队中落地过程,分析我们在各个阶段中,遇到的一些问题,并將分析问题的思路和解决问题的方法记录下来,以便让后来的同学了解golang在团队的演进过程,吸取相关的经验,以便在今后的系统设计和开发上少走弯路。在系统不断演进的过程中,有时候对框架的选型很随意,认为能满足现在功能就行,没有对其扩展性和性能进行考量,是否能够持续的支撑业务的发展——走可持续化发展路线,导致随着业务的发展,发现当时选型有误,但想转又很难。那么现在,我就来...阅读全文

博文 2017-09-01 23:04:38 走天涯_4fce

搭建一个PHP微框架(利用composer)

为什么搭建一个框架(搭建一个怎样的框架) 通过搭建一个框架更好的学习PHP 搭建一个专门用于构建API的微型框架。 微型框架基本上是一个封装的路由,用来转发HTTP请求至一个闭包,控制器,或方法等等,尽可能地加快开发的速度,有时还会使用一些类库来帮助开发,例如一个基本的数据库封装等等。 为了快速实现,我们尽可能的使用他人造好的轮子,然后进行组装。 概念了解 框架,就是遵照一定的规范(PHP-FIG),借助他人的轮子,实现快速业务,安全等附加价值。 MVC,一种分工协作的模式。还有依赖注入、单例等等很多设计模式。 框架流程大体是:URI--》入口文件--》路由--》控制器--》服务层--》模型层--》返回结果(html、json、xml等) 准备工作 了解composer,使用Packagis...阅读全文

博文 2017-09-21 20:04:10 biaoqianwo

Vue.js 与 Laravel 分离

首先表示折腾了十来天的php-laravel框架和vue的结合开发又偏前端实在是太大的阻碍,首先laravel的机制就是写完路由router再加载blade模板的.如果要在laravel工程里面加载一个.vue文件,必须通过一个 blade模板再导入vue.js. 近期接触了前端较前卫的思想,那就是压缩打包代码+组件化开发.这种思路就由不得传统的html的前端静态代码的,传统的静态项目的代码是这样的:而这样子很不利与组件化开发, 换言之就是改动了一处,需要凭记忆+个人能力+注释清楚来修改其他文件(如果改的不只是一处的话,那对于维护web的程序员来讲简直是噩梦)于是前端有个很厉害的东西叫:脚手架,在vue里就是vue cli 这玩意只要一句init的命令行就能生成一堆项目的文件,开发起来相当方...阅读全文

博文 2018-01-10 16:00:33 mouseleo

虚拟主机安装Laravel框架

虚拟主机相对于云主机来说使用方便,价格便宜,是不少新手的最爱。但是虚拟主机也有局限性,比如自定义程度不高,想去安装一些框架都不能。今天就用主机公园的虚拟主机来演示一下如何用虚拟主机安装常用的PHP框架。1:进入cPanel管理面板,进入Softaculous功能 2:左侧找到FrameWorks并进入,可以看到有很多框架 3:点击Laravel进入安装界面,点击Install Now 4:选择域名设置安装目录即可快速安装 总结:其他框架安装方法雷同,大家可以尝试一下...阅读全文

博文 2017-07-11 11:07:51 关注虚拟主机行业

Laravel框架笔记

Laravel框架笔记 ============================================================== 课程大纲: 1. composer的安装 2. laravel框架的安装 3. 本地域名解析与apapche虚拟主机配置 4. 环境配置与数据库连接 目录结构介绍 路由使用 控制器使用 5. laravel数据库迁移工具 6. laravelDebug安装与调试命令 一、 composer的安装: 1.Composer是什么? 是 PHP 用来管理依赖(dependency)关系的工具。 你可以在自己的项目中声明所依赖的外部工具库(libraries), Composer 会帮你安装这些依赖的库文件。 2.网址:https://getcompo...阅读全文

laravel框架常用composer拓展包或拓展服务快速查询列表

为了方便自己快速添加经过精挑细选的拓展包和拓展服务 自定义格式 序号.名称 github地址 功能描述 安装 使用笔记 1.Laravel-Excel(Excel导入生成) github:Laravel-Excel 官网:Laravel-Excel 功能描述:可以把数据以Excel表格的形式导出,也可以导入Excel表格生成数据并插入数据库,同时还可以操作csv,pdf等文件。 安装//载入拓展包:在composer.json中的required中添加此条并composer update "maatwebsite/excel": "~2.1.0" //添加服务:添加到config.php providers数组中 Maatwebsite\Excel\ExcelServiceProvider:...阅读全文

博文 2017-07-08 23:05:05 王乐城愚人云端

安装 laravel 5.5 成功,记录一下

通过 composer 安装 laravel 5.5 成功,记录一下历程。 系统环境 os: ubuntu 16.04LTS php: 7.0.22 composer: 1.5.2 (上一篇博文里有安装历程) laravle 5.5 环境要求 官方文档推荐用homestead虚拟机,一键安装省去繁琐配置,看了看我这08年的笔记本,还是自己配吧,官方文档环境要求: PHP >= 7.0.0 PHP OpenSSL 扩展 PHP PDO 扩展 PHP Mbstring 扩展 PHP Tokenizer 扩展 PHP XML 扩展 经我测试,我系统apt-get方式安装的php7.0版本缺少三个扩展,Zip,Mbstring 和 XML ,直接先看看这三个扩展安装了没有,不过先不用着急也行,因为安...阅读全文

博文 2017-09-19 14:02:38 银河之浪

Laravel 5.x HTTPS反向代理的实现

需求 可针对多个域名设置HTTPS并指向到同一个项目。 最先考虑到的是通过nginx的反向代理来实现,最终测试发现效果并不完美。 示例如下: server { listen 127.0.0.1:8080; root /path/to/application; index index.html index.php; ...php config; } server { listen 80; listen 443 ssl; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; # 设置Host proxy_set_header X-Forwarded-For $remote_addr; # 设置请求源...阅读全文

博文 2017-12-06 04:00:31 imoing

Laravel5.4注册登录解析及使用教程

一.说明 马上就要出5.5Laravel版本了,据说这是继5.1LTS之后第二个LTS版本。不过今天的重点是说一下5.4版本的注册以及登陆。我们知道在Laravel5.2版本开始,Laravel框架就自带了登录注册功能。5.1是没有的,当然今天要说的是5.4.不过先说一下这几个版本的差距,小小提一下5.2之中的 Route::controllers([]); 这个使用方法已经废除了。其他的核心内容差距不大。下面开始5.4版本。防止有些同学刚接触,我们从头说起。 二.开始 1.下载5.4Laravel框架,推荐是使用composer,不懂得可以看Laravel第一篇怎么使用composer。直接在终端你的存放项目的路径下输入 composer create-project --prefer-d...阅读全文

博文 2017-09-09 11:01:35 gu_wen_jie

PHP Fatal error: Uncaught exception failed to open stream: Permission denied

在contos系统下。使用的为thinkphp框架Apache/2.4.7 (Unix) PHP/5.5.10 安卓发起请求。 500 Internal Server Error 但是 数据却正常返回 首先在/phpstudy/server/httpd/logs/error_log 文件中 查看错误详情 错误很长截取了重要部分 PHP Fatal error: Uncaught exception 'think\\exception\\ErrorException' with message 'error_log(/phpstudy/www/SwmSignPhp/runtime/log/201710/11.log): failed to open stream: Permission den...阅读全文

博文 2017-10-12 03:04:10 A我是文明人

thinkphp5发送邮件(实例代码 非常适合新手)

thinkphp5发送邮件(实例代码 非常适合新手) thinkphp5整合phpmailer实现发送邮件功能 Laravel框架集成了SwiftMailer库进行邮件发送可是thinkphp5并没有集成类似的扩展。 不过这都不是什么事,今天我就带领大家集成一下phpmailer发送邮件。 thinkphp5发送邮件没有大家想象的那么难,跟着我两步就可以实现发邮件的功能。 不用 composer 不用担心各种拷贝代码细节出现的错误和各种异常 你要做的就只是在对应的邮箱里面开启 SMTP服务 如果你不会开启smtp服务的话可以加qq群 623918245 很多人都乐意帮你解答。 先看看成果~ 嗯,这样比较有动力。 第一步:加 623918245 群 从群文件下载 phpmailer.rar 解...阅读全文

博文 2017-08-04 10:04:47 朱总

关于脱离laravel框架使用Illuminate/Validation验证器

1.关于Illuminate/Validation验证器 Validation 类用于验证数据以及获取错误消息。 github地址:github.com/illuminate/validation 文档地址:https://docs.golaravel.com/docs/4.1/validation/ 2.使用composer 如何使用composer:composer使用 packagist:https://packagist.org/package... composer.json: { "require": { "illuminate/validation": "^5.5" } } 3.将vendor引入,自定义类 阅读全文

博文 2017-11-30 03:00:31 phpworld

关于PHP2017全球开发者大会

PHP全球开发者大会今天如期举办,虽说冠以全球之名,但如同国内的其他行业大会,也都是国内的开发者参与,没有体现出国际范。两天的大会都讲了些什么,简单回忆一下。 这一届大会主题是高可用的PHP,从这个层面,新浪微博PC主站侯青龙讲述了微博在弹性扩容上的实践。 从前的微博要为突发的大流量而做大量的设备冗余,为此要付出一大笔开销,然而在流量高峰过去之后,设备又处于闲置,一定程度上带来了资源的浪费。为此微博研发了弹性扩容平台,DCP(Docker container platform)有效节约了70%的冗余开销。 从前的微博在流量高峰到来时需要做服务降级,影响用户的体验,但使用DCP和混合云之后,去年春节流量高峰时,就能从容地扩容而服务就不必再降级。 还有讲到使用Docker打包运行时镜像是将ngi...阅读全文

博文 2017-06-14 17:03:02 robinfly

Laravel Passport 密码模式

前言:laravel passport 密码模式作为网站前后端分离后API验证登录的一种解决方案,本文主要记录这个过程中遇到的一些问题。 安装 laravel passport要求laravel版本大于等于5.3,因此必须把低于此要求的框架升级到5.3,具体做法可以参考上一篇博客。 升级完后,使用composer require laravel/passport=~1.0即可安装passport 按照官方文档指导,注册service provider、注册路由和引入HasApiToken等即可,在这里不再赘述。 遇到的问题 第一个问题:由于各种原因,用来对用户进行登录验证的字段和laravel默认往往不一样。这时候就要自定义登录的用户名和密码。 解决方案: 在用户模型里面添加一下两个方法,分...阅读全文

博文 2017-06-14 17:34:19 zshanjun

为了方便学习,创建了laravel学习交流群互相帮助,欢迎加入

欢迎加入群(109256050)一起学习交流! 以下是群内的一些学习资料: 一、免费视频教程 Laravel Entrust角色权限管理 Git 75分钟极速入门 二、付费视频 Laravel框架完整学习路径包括实战及底层原理的解析 .最in最规范的Laravel优雅实战入门课程 Laravel & VueJS深度整合实战 全球独一无二的Laravel底层应用与源码解析实战教程 Elasticsearch & Laravel搭建全文搜索引擎,让搜索不再是简单的数据库查询 nestedset-无限分类正确姿势 三、深度好文章 文章地...阅读全文

博文 2018-02-02 22:02:35 pilishen

Alpaca-Laravel 框架(三) --- 编写代码生成工具,自动生成代码

目的 代码自动生成工具(Alpaca-Builder)目的用来快速的编写代码,减少一些重复的工作。使用Alpaca-Laravel框架开发项目时,可以利用代码生成工具,快速的生成代码,减少工作时间,提高工作效率。 Alpaca-Spa-Laravel 是 前后端分离 开发的一个后台管理系统的DEMO。Laravel用来实现后端功能,Alpaca-Spa用来实现前端功能,前后端之间通过Json交换数据。 详情请阅读《Alpaca-Laravel 框架(一) --- 概述,前后分离的后台管理系统》。 Alpaca-Builder使用灵活的模版格式来配置代码生成文件,如果现有的代码模版不能满足需求,只需要修改代码模版,或者新增代码模版即可。 主要内容 主要功能是根据输入的数据库表名声生成一下内容:...阅读全文

博文 2017-09-05 18:02:46 大弹簧