草庐IT

php - 如何抢先模拟一个被另一个类实例化的类

我怀疑我的问题的“最佳”答案是使用依赖注入(inject)并完全避免该问题。不幸的是我没有那个选项...我需要为一个导致第三方库被实例化的类编写测试。我想模拟/stub库类,这样它就不会进行实时API调用。我在CakePHPv3.x框架中使用phpunit。我能够模拟库并创建stub响应,但这并不能阻止“真实”类被我的测试之外的代码实例化。我考虑过尝试模拟实例化上游的类,但是它们很多,这会使测试编写/维护起来非常笨拙。有没有办法以某种方式“stub”类的实例化?类似于我们可以告诉php单元期待API调用并预设返回数据的方式? 最佳答案

php - Laravel 5.1 - 每次刷新都会重新生成 session

我运行一个laravel应用程序,并将session存储在redis上。每次我刷新页面-都会生成一个新session(我可以使用keys*看到它)并且session的cookie也会相应地更改。我检查了cookie的到期日期,这是一个有效的future日期。我在我的本地主机上使用php-S运行它,也在CentOS服务器上运行,这两个都存在问题。我的session.php文件:return[/*|--------------------------------------------------------------------------|DefaultSessionDriver|-

php - 定义 "Validation in the Model"

关于用户输入验证的位置有一些讨论:ShouldvalidationbedoneinFormobjects,orthemodel?Wheredoyoudoyourvalidation?model,controllerorview这些讨论已经很老了,所以我想再次提出这个问题,看看是否有人有任何新的意见。如果没有,我提前道歉。如果您来自模型阵营的验证-模型是否意味着数据的OOP表示(即ActiveRecord/DataMapper)作为“实体”(借用DDD术语)-在这种情况下,我假设,希望所有模型类都继承通用的验证约束。或者这些规则是否可以简单地成为模型中服务的一部分——即验证服务?例如,您

php - Symfony2 : Validating a date using the Form Validator returns error

我在我的表单中添加了一个类型为“日期”的元素,然后它有一个验证规则,该规则指定表单元素值必须是日期类型,否则返回错误。然而,Symfony并没有处理验证,而是返回了一个异常。见下面的代码:用户类型.php$builder->add('startdate','date',array('label'=>'StartDate','widget'=>'single_text','format'=>'yyyy-MM-dd'));验证.ymlAcme\StoreBundle\Entity\User:properties:startdate:-Date:message:Youmustspecifya

php - XDebug、Eclipse 和发布

我正在尝试调试注册表单。是否有一种简单的方法来调试带有随请求发布数据的页面? 最佳答案 Ifyouwanttodebugthe“POST”methodtoaPHPpage,thenmakesureyouhave“Debugallpages”checkedinRun->OpenDebugDialog;PHPWebPage/NewConfiguration;AdvancedTab.ThenyoushouldletthePHPscriptruntodisplayawebpagewithaform.Whenyouputthedatainto

php - Windows,NetBeans : Where's the php. ini?

我已经离开PHP一段时间了,所以希望这是一个简单的疏忽。但是,我无法包含MySQL扩展。设置Windows8专业版64位NetBeans7.2.1(内置PHPWeb服务器)MySQLPHP5.4.8问题fatalerror:调用未定义函数mysql_connect()尝试解决复制php.ini-development到php.ini(文件是我安装PHP的地方,E:\Software\php-5.4.8-Win32-VC9-x86)通过取消注释行来编辑php.iniextension_dir="分机"extension=php_mysqli.dll将E:\Software\php-5.4

php - 实现 3 结构模型(域对象、数据映射器和服务)的一些不确定性

正如标题所暗示的,我在实现3结构模型(域对象、数据映射器和服务)时遇到了一些小问题。过去,当有人在我的网站上注册时,我会简单地做$user->register($firstName,$lastName,$emailAddress,$username...);并且该方法将按这样的步骤运行1.Checkiftheformsentwasvalid.2.Checkifalltherequiredfieldswerefilled.3.Checktheifthelengthsofstringswerevalidandtherangeofintegersetc.4.Checkiftheinputis

php - 当 Firefox 显示 "the Image cannot be displayed because it contains errors"时,我如何找出错误是什么?

我有一个制作图像的PHP文件。我将PHP配置为在屏幕上报告错误。当我在Firefox23中运行PHP文件中的文件时,它返回TheImagecannotbedisplayedbecauseitcontainserrors。我如何找出图像中的特定错误?代码如下:0)and(!$xend)){$y=0;while(($y1andfunction_exists('imagesetbrush')){$brush=imagecreatetruecolor($brushsize,$brushsize);imagefill($brush,0,0,$noisecol);imagesetbrush($im

php - 如何将 CKFinder 与 Laravel 集成?

我正在尝试将CKFinder与Laravel集成,我已经完成了大约95%。除了CheckAuthentication功能外,我可以让所有功能正常工作-无论上传是否正常,我都必须让它返回true。我尝试做的是在config.php文件中引导Laravel,然后检查用户是否已登录,如下所示:public/packages/ckfinder/config.php不过,这总是返回false。我也试过直接使用Laravel的Session在有人登录时将变量设置为true,在他们注销时设置为false,然后在config.php文件中检查它,但它总是返回Session::get("IsAuthor

php - 连接 Facebook Graph API 时 ElasticBeanstalk for PHP 上的 504 网关超时

当用户使用他们的Facebook登录名连接到我的网络应用程序时,服务器不会重定向回来,因为它在途中捕获了504错误。它在我的本地测试环境中正常工作,但在我使用AmazonElasticBeanstalk作为平台的暂存服务器上出现问题。知道如何解决这个问题吗? 最佳答案 来自http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ts-elb-error-message.htmlDescription:Indicatesthattheloadbalan