第三方库中的PHP多个匹配的名称空间

时间:2018-08-07 20:43:15

标签: php laravel cron namespaces composer-php

我目前正在编写一些Laravel播种机,以在测试环境中填充数据库。我正在使用出色的Faker来生成列值,并使用名为CronExpressionGenerator的Faker插件来生成随机cron值。

$faker->addProvider(new \CronExpressionGenerator\FakerProvider($faker));
$cronTxt = $faker->cron();

然后,我正在使用名为Cron Expression Parser的程序包来生成每个cron表达式下一次出现的时间戳。

$cron = new \Cron\CronExpression($cronTxt, new DateTimeZone(DateTimeZone::UTC));

这两个软件包都是使用Composer安装的。

不幸的是,两个软件包似乎都在使用命名空间\Cron\CronExpression

enter image description here

因此,当我运行数据库迁移时,PHP会在函数签名上中断。

Symfony\Component\Debug\Exception\FatalThrowableError  : Argument 2 passed to Cron\CronExpression::__construct() must be an instance of Cron\FieldFactory, instance of DateTimeZone given

编辑-图像服务目前无法正常工作。上面的屏幕快照显示的是PHPStorm,显示了两个CronExpression匹配项,每个匹配项:

  • vendor/dragonmantank/cron-expression/src/Cron
  • vendor/polander/cron/src/Cron

0 个答案:

没有答案