问题标签 [pimple]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
middleware - Silex/Pimple:中间件不会立即更新应用程序参数
我使用 Silex/Pimple 容器来存储我的应用程序的参数。其中一些参数是使用中间件设置的。
现在我遇到了一个问题,我想访问一个应该通过中间件设置的参数值。但是当我输出它时,它仍然包含旧值。
这是我的代码的简化版本:
输出:
有人知道我如何强制中间件先运行然后输出吗?还是有其他方法可以在其他所有事情之前与请求进行交互?
doctrine-orm - 在 Silex 应用程序中更新使用的疙瘩版本
我目前正在使用silex 1.3创建一个应用程序。
我想使用dflydev 学说 orm 服务提供者。
对于这个服务提供商,pimple >=2.1 是必需的——但我的 silex 版本带有 pimple 1.x。
我尝试通过 composer 安装较新的版本,但这会导致错误:
您的要求无法解决为一组可安装的软件包。
问题 1 - silex/silex v1.3.0 需要 pimple/pimple ~1.0 -> 找不到匹配的包 d。- silex/silex v1.3.0 需要 pimple/pimple ~1.0 -> 找不到匹配的包 d。- silex/silex v1.3.0 需要 pimple/pimple ~1.0 -> 找不到匹配的包 d。- silex/silex v1.3.0 的安装请求 -> silex/silex [ v1.3.0] 可满足。
所以我的问题是:我怎样才能更新这个疙瘩版本?
编辑:我刚刚看到有一个旧版本的 dflydev-doctrine-orm-service-provider,它使用 pimple 1.x,所以我想我必须使用这个版本。 不过,如果更新(理论上)是可能的,我会很感兴趣。
php - Pimple 源代码:为什么要将对象 id 和对象本身存储在不同的数组中?
查看Pimple 源代码,我发现它将对象及其 id 存储在两个不同的数组中:
接着:
最后:
我在这里的 Phalcon 源代码中也看到了类似的东西。
我的问题是为什么要单独存储对象 ID 键,为什么不只是if (!isset($this->values[$id]))
?在数组中搜索是否更快?我做了一些测试,似乎搜索速度几乎相同。
php - 你如何用 Pimple 注射 Valitron 并重复使用
所以我一直在使用 Valitron 库来验证发布的表单,并且遇到了一些问题。
构造函数接受要验证的数据,当您将库作为 Pimple 或其他容器的依赖项注入时,这会导致问题。如果你想验证多个东西,它也会导致问题,因为你基本上每次想要使用它时都必须实例化库。
有没有办法解决这个问题?
最终,我希望能够将库定义为服务并像这样用 Pimple 注入它:
任何需要验证某些东西的控制器/类都会在它们的构造函数中初始化它,如下所示:
每当我需要验证某些内容时,我都可以说:
但似乎没有 setData 函数,或任何在使用之间重置库的方法。
问题:我如何将 Valitron 与 Pimple 一起使用并重用它来一次验证多个事物?
请注意:必须注入。它也不应该需要在每次使用之前进行初始化。请不要告诉我我必须扩展库或破解它才能使其正常工作!
php - 肿胀的疙瘩容器 - 这是正常的吗?
所以我刚刚将 Pimple 集成到一个项目中,我现在的情况是我有一个文件:
其中包含 400 多个:
我的问题是:这是常态吗?我应该担心这个吗?有更好的方法吗?
php - 找不到类“Pimple\Container”
我正在尝试按照https://github.com/silexphp/Pimple自述文件在我的项目中安装 Pimple。
我收到的错误消息是:
我的 composer.json 文件是:
当我做:
或者
消息是:无需安装或更新
在 vendor/bin 我只能看到 phpunit 文件。但是我可以在 composer.lock 中看到疙瘩
我的 PHP index.php 文件:
你能帮我让它工作吗?
php - 不推荐使用 Pimple DI 共享。怎么办?
在 Pimple 1.0 中,我曾经能够像这样共享类实例:
现在这似乎已被弃用,我无法找到这样做的新方法。
php - PhpStorm 自动完成对 Pimple 管理的未知对象属性的支持?
我在由 Silex 提供支持的应用程序中有以下代码:
$uknownObj
作为一个依赖注入容器。
我知道这unkownRef
是一个例子MyCoolObj
。
现在我如何告诉 IntelliJ / PhpStorm 来帮助我自动完成这个对象?
php - 带工厂的 PHP 依赖注入容器
我正在使用silexphp/Pimple
依赖注入容器(DIC)并且不确定如何处理经典的工厂模式。
例子:
父类Animal.php
有两个子类,称为DogAnimal.php
和CatAnimal.php
。子班的数量可以增加。
在这种情况下,我想创建一个工厂来创建新的 Animal 对象或 Animal 类的孩子。Pimple 确实允许为每个服务创建工厂方法。
在使用 Pimple DIC 时,我认为我不想将每个子类(狗、猫等)添加为服务。特别是随着列表的增长。对我来说,这似乎是对 DIC 的滥用,但也许我错了。
我是否正确假设我应该创建一个动物工厂服务并使用 Pimple 将依赖项注入工厂,而工厂又用于创建新的狗或猫?