excelperfect Q:如下图1所示,我根据单元格区域A1:B10中的数据绘制了一个折线图,我现在想用VBA得到该折线图的第5个数据点的分类名(从数据表中可以得出其分类名为“桔子”),如何编写程序实现我的需求...图1 A:可以使用下面的自定义函数来获得分类轴的类别名: '获取指定图表中指定系列上某数据点类别名 '参数cht:代表图表 '参数lSeriesNum:代表图表中的系列编号 '参数lPointNum:...GetCategoryLabel = vCategory(lPointNum) End Function 使用下面的代码调用GetCategoryLabel函数,获取图表中指定系列上某点的类别名...Set cht = ActiveSheet.ChartObjects(1).Chart '系列1 lSeries = 1 '第5个数据点 lPoint = 5 '获取类别名...:"& vbCrLf & str End Sub 运行上述代码,Excel显示当前工作表中第一个图表上系列1的第5个数据点的类别名,如下图2所示。
我们只需要知道,在这一步中主要完成了业务代码路径设置、项目基础服务注册、全局类别名注册等工作。...registerBaseServiceProviders(); $this->registerCoreContainerAliases(); } 构造函数主要完成了app目录的设置、自我绑定、基础服务注册、常用类别名注册...在laravel中,服务容器以完全限定命名空间名称或用户自定义的别名(aliase)作为索引,将该类已有实例或实例的构造器存放到自身定义的instances和bingdings两个数组属性中。...那么服务容器具体又是如何实现 服务名=》实例 的映射呢?答案是依赖解决resolve()方法。...对象构造是通过PHP超全局变量$_GET、$_POST、$_SERVER、$_COOKIE、 $_FILES作为参数来封装的,一方面是为了添加更多的参数处理接口,另一方面是为了使整个request对象符合PSR7规范
今天我们将在定义好模型关联的基础上进行关联查询、插入和更新操作,看看如何借助模型关联提高代码的可读性并提高编码效率。...学院') ->orderBy('created_at', 'desc'); }])->findOrFail(32); 甚至还可以为统计字段设置别名,以便可以从不同维度统计某个字段: $...,比如我们想要访问文章作者的扩展表信息,可以这么做: $post = Post::with('author.profile')->findOrFail(1); 这样就可以嵌套获取到 profile 表记录的信息...这样,我们就不需要在每个地方去判断如果文章作者信息为空该如何处理了,因为这种情况下返回的也是一个正常的 User 模型实例。...Eloquent 提供了这种同步机制帮助我们更新子模型时触发父模型的更新时间 updated_at 字段值更新,要让该机制生效,需要在子模型中配置 $touches 属性: // 要触发更新的父级关联关系
'Route' => Illuminate\Support\Facades\Route::class, ...... ] 看一下AliasLoader里是如何注册这些别名的 // class:...,比如当我们使用别名类 Route时PHP会通过AliasLoader的load方法为 Illuminate\Support\Facades\Route类创建一个别名类 Route,所以我们在程序里使用别...getFacadeAccessor() { return 'router'; } } 只有简单的一个方法,并没有 get, post, delete等那些路由方法, 父类里也没有...$args); } //获取Facade根对象 public static function getFacadeRoot() { return static...return static::$resolvedInstance[$name] = static::$app[$name]; } } 通过上面的分析我们可以看到Facade类的父类
之前在 深度挖掘 Laravel 生命周期 一文中,我们有去探究 Laravel 究竟是如何接收 HTTP 请求,又是如何生成响应并最终呈现给用户的工作原理。...要掌握什么是「控制反转」需要整明白项目中「控制反转」究竟「反转」了哪方面的「控制」,它需要解决如何去定位(获取)服务所需要的依赖的实现。...() 将具体的「依赖注入容器」及其别名注册到「Laravel 服务容器」。...注册核心服务别名到容器 用过 Laravel 框架的朋友应该知道在 Laravel 中有个别名系统。...Facades 和别名系统我们可以很方便的通过别名来使用 Laravel 内置提供的各种服务。
别急,我们去它的父类 vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php 中看看,玄机说不定就在这里哦。...接着,它就通过 getFacadeRoot() 获取我们当前门面的实例对象,然后调用实例对象中的 get() 方法。...好了,到此为止,其实如果面试的时候有面试官问你 Laravel 中的门面模式是如何实现的时候,你就可以自信地说核心就是这个 __callStatic() 魔术方法了。...它只是返回一个实例的别名,还记得这个别名是在哪里定义的吗?...OK,知道原理了,我们来看看是不是这样,找到 Application 的父类 vendor/laravel/framework/src/Illuminate/Container/Container.php
所以有空的时候逛逛论坛,搜下Google就发现许多关于laravel核心架构的介绍,以及如何使用的网站(确实看完后再去看手册就好理解多了),下面就根据一个我觉得不错的网站上面的教学来记录一下laravel...从最终的使用方式来看,laravel容器对服务实例的管理主要包括以下几个方面: 服务的绑定与解析 服务提供者的管理 别名的作用 依赖注入 先了解如何在代码中获取到容器实例,再学习上面四个关键 如何在代码中获取到容器实例...如何理解服务绑定与解析 浅义层面理解,容器既然用来存储对象,那么就要有一个对象存入跟对象取出的过程。这个对象存入跟对象取出的过程在laravel里面称为服务的绑定与解析。...,如果是别名,那么就会根据服务绑定名称的别名配置,找到最终的服务绑定名称,然后进行解析;第二个参数是一个数组,最终会传递给服务绑定产生的闭包。...Closure; } 如果之前找到的 $concrete 返回的是 $abstract 值,或者 $concrete 是个闭包,则执行 $this- build($concrete),否则,表示存在嵌套依赖的情况
category_name (string) – 使用分类别名 category__and (array) – 使用分类 ID 数组。...使用分类 ID 获取含有某个分类(以及该分类下的所有子分类)的文章: $query = new WP_Query( array( 'cat' => 4 ) ); 使用分类别名获取含有某个分类(以及该分类下的所有子分类...( array( 'cat' => '2,6,17,38' ) ); 使用分类别名获取含有几个分类(只要含有一个)的文章: $query = new WP_Query( array( 'category_name...' => 'staff,news' ) ); 使用分类别名获取含有几个分类(都含)的文章: $query = new WP_Query( array( 'category_name' => 'staff...); 二、标签参数 有以下 7 个参数: tag (string) – 使用标签别名。
作为 Laravel 的重度使用者肯定都对多态关系不默生,以官方文档为例,文章有标签,视频有标签,那么文章和视频这些模型与标签模型的关系就是 多态多对多(Many To Many (Polymorphic...Relations\Relation; Relation::morphMap([ 'posts' = 'App\Post', 'videos' = 'App\Video', ]); https://laravel.com...不管从定义还是代码耦合度上,使用 trait 来解决这类特性需求都是再适合不过了,如果你对 trait 还不太熟悉,可以阅读我之前的文章: 《我所理解的 PHP Trait》 我们的目标是使用表名来做为关系类别名...,那么在模型中如何获取表名呢,直接使用模型的 getTable 即可,那么整个 trait 的实现如下: app/Traits/UseTableNameAsMorphClass.php <?...总结 以上所述是小编给大家介绍的Laravel设置多态关系模型别名的方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对ZaLou.Cn网站的支持!
为了解决上述问题,出现了很多 CSS 预编译语言,CSS 预编译语言是基于 CSS 语言的语法扩展,除了能解决上述缺乏语言特性带来的问题之外,还支持嵌套书写,减少重复输入父级选择器(可理解为 CSS 中的继承机制...它允许你使用变量、嵌套规则、混合、导入等众多功能,并且完全兼容 CSS 语法。...List $font-stack: ('Helvetica', 'Arial', sans-serif); body { font: 100% nth($font-stack, 1); // 获取...嵌套 Sass 的嵌套语法也很实用,在此之前,我们只能通过多个 CSS 样式定义来解决嵌套问题: nav { ul { margin: 0; padding: 0; list-style...继承 Sass 还支持样式继承,我们通过 % 前缀指定用于继承的样式,然后在需要继承的地方提供 @extend 指令继承相应的父类样式: // 以%开头的父类不会渲染 %message-shared {
前言 对于新手而言,你可能只需要会使用Laravel就行了,这也是我第一章没写Laravel生命周期的原因。...any('foo', function () { return 'Hello World'; });#匹配所有类型的请求 路由参数 用于传递参数,比如www.test.com/artice/1,获取...用中括号将 "as" => "name" 和 匿名函数包起来形成一个数组,这样就可以给路由添加一个别名了。...PS:别名的关键词是 as 以上个例子为例,路由别名写法如下: Route::get('/{name}', ["as" => "name", function ($name) { return...这样既方便了管理,又防止了不同类别的路由规则起冲突。
外观加载原理 在讲解如何使用外观组件之前,我们依旧先去深入分析「外观」组件是如何被 Laravel 加载到项目中的。这一步是 用好「外观」组件的前提。...获取或创建「别名加载器」单例实例。...探秘 Facade 最后我们将揭开 Facade 的神秘面纱,研究一下 Laravel 是如何实现 Facade 设计模式的。...好了现在我们来看看 Facade::__callStatic 是如何获取实际的服务并调用响应的方法的吧。...这样一看似乎「Laravel 别名服务」也就不这么神秘了。
这是很典型的 Win32 错误,本文介绍如何修复此错误。 ---- 一个最简的嵌入其他窗口的例子 我们在 MainWindow 中嵌入一个其他的窗口来承载新的 WPF 控件。...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 29 30 31 32 33 34 35 36 37...这是一个 Win32 错误,因为我们试图将一个普通的窗口嵌入到另一个窗口中,而实际上要完成嵌入需要子窗口才行。 那么如何设置一个 Win32 窗口为子窗口呢?...,也就是设置 ParentWindow 为 hwndParent.Handle(我们使用参数中传入的 hwndParent 作为父窗口)。...现在再运行,即可正常显示此嵌套窗口: 另外,WindowStyle 属性最好加上 WS_CLIPCHILDREN,详情请阅读: 解决 WPF 嵌套的子窗口在改变窗口大小的时候闪烁的问题 ---- 参考资料
开发环境:Laravel5.3 + PHP7 + OS X 10.11 在Laravel学习笔记之Middleware源码解析聊过,Kernel中的sendRequestThroughRouter()处理...,这样取个别名只是为了简化作用,使用的是PHP内置函数class_alias(string $class, string $alias)来给类设置别名。...,那就调用IlluminateSupportFacadesRoute::get(),当然这里IlluminateSupportFacadesRoute没有get()静态方法,那就调用父类Facade的_...这个过程主要使用了两个技术:一个是外观类的别名;一个是PHP的重载,可看这篇:Laravel学习笔记之PHP重载(overloading)。 6....7.
开发环境:Laravel5.3 + PHP7 + OS X 10.11 在Laravel5.3之Middleware源码解析聊过,Kernel中的sendRequestThroughRouter()处理...注册Providers RegisterProviders 7....,那就调用IlluminateSupportFacadesRoute::get(),当然这里IlluminateSupportFacadesRoute没有get()静态方法,那就调用父类Facade的_...这个过程主要使用了两个技术:一个是外观类的别名;一个是PHP的重载,可看这篇:Laravel5.2之PHP重载(overloading)。 6....7.
作为 Laravel 的重度使用者肯定都对多态关系不陌生,以官方文档为例,文章有标签,视频有标签,那么文章和视频这些模型与标签模型的关系就是多态多对多(Many To Many (Polymorphic...Relation; Relation::morphMap([ 'posts' => 'App\Post', 'videos' => 'App\Video', ]); https://laravel.com...不管从定义还是代码耦合度上,使用 trait 来解决这类特性需求都是再适合不过了,如果你对 trait 还不太熟悉,可以阅读我之前的文章:《我所理解的 PHP Trait》[2] 我们的目标是使用表名来做为关系类别名...,那么在模型中如何获取表名呢,直接使用模型的 getTable 即可,那么整个 trait 的实现如下: app/Traits/UseTableNameAsMorphClass.php <?...References [1] 多态多对多(Many To Many (Polymorphic)): https://laravel.com/docs/6.x/eloquent-relationships
而作为最流行的 PHP 框架,Laravel 自然也是为处理用户请求提供了丰富的工具集,从收集、验证、到过滤、编排,可谓是一应俱全,接下来,我们将通过三四篇教程的篇幅来为你详细介绍如何在 Laravel...$request->get('id') : 0; exists 方法是 has 方法的别名,两者调用方式一样,功能完全等效。...我们可以通过「.」来分别获取每个数组元素: $request->input('books.0'); $request->input('books.1'); 甚至还支持更深层级的嵌套: dump($request...获取 JSON 输入字段值 随着基于 JavaScript 的单页面应用(SPA)应用的流行,除了传统表单请求提交的 POST/GET 数据之外,JSON 格式的请求数据也越来越常见,Laravel 支持对...作为定义路由的匿名函数参数之间已经见过很多了,这里我们来演示下作为控制器方法参数传入,以及如何通过 Request 对象实例获取。
子查询 查看图书类别表中有图书的类别id和类别名称 常见错误写法 正确写法 ---- 前言 内容:MYSQL基本操作-select 查询语句【续】 聚合函数 最大值(max) select max(bookprice...a.retypeid; 外连接 示例表:user user_id user_name user_sex 1 张三 1 2 李四 1 3 王五 1 4 赵六 1 5 钱七 1 6 孙八 1 7...id和类别名称 SELECT typeid, typename FROM booktype WHERE NOT EXISTS ( SELECT * FROM book WHERE booktype.typeid...= book.typeid ); 查看图书类别表中有图书的类别id和类别名称 SELECT typeid, typename FROM booktype WHERE EXISTS ( SELECT...* from emp) as t; 如果嵌套的是子查询,必须给表指定别名,一般会返回多行多列的结果集,当做一张新的临时表 只出现在子查询中而没有出现在父查询中的表不能包含在输出列中 多层嵌套子查询的最终结果集只包含父查询
框架启动与服务容器源码 了解了服务容器的原理,要处理的问题,以及 Laravel 中如何使用服务容器以及服务提供者之后,我们就进入到了源码的学习中。...bind 在 Application 中,我们可以看到熟悉的 make() 和 boot() 方法,而 bind()、instance()、singleton() 方法则都在它的父类 Container...这个 object 是通过前面的一系列判断并调用相应的方法来获得的,通过 getAlias() 我们会获得需要实例化的对象是否有别名设置,这个设置主要是框架内部的很多对象都会进行一个别名配置,通常是框架比较核心的一些组件...resolveDependencies() 用来解决类实例化时构造函数的依赖问题,需要的参数也是通过上面反射时 getParameters() 方法获取的。...这些别名实例的定义最大的用途其实是在 门面 中使用,这个我们后面在讲到门面的时候还会再说。
Laravel 框架或者说任何一个 Web 项目,我们都需要理解它究竟是如何接收到用户发起的 HTTP 请求的;又是如何响应结果给用户的;在处理请求和响应的过程中都存在哪些处理值得深入学习。...至于 「中间件」 和 「引导程序」如何被使用的,会在后面的章节讲解。...那么,究竟一个请求是如何被处理的呢?...获取一个路由分发器匿名函数 * * @see https://github.com/laravel/framework/blob/5.6/src/Illuminate/Foundation...三 总结 在 「创建 Laravel 应用实例」时不仅会注册项目基础服务、注册项目服务提供者别名、注册目录路径等在内的一系列注册工作;还会绑定 HTTP 内核及 Console 内核到 APP 容器,
领取专属 10元无门槛券
手把手带您无忧上云