小编yiv*_*ivi的帖子

如何在symfony2中创建slugify?

我已经开始使用symfony2了,我发现了symfony 1.4中存在的一些函数,如slugify.我需要这个,以改善furl.

php slug symfony

6
推荐指数
2
解决办法
2万
查看次数

使用枚举进行类型提示?

我在这里阅读了有关枚举及其“实现”的内容

PHP 和枚举

重点是,为什么要使用枚举,而不是用于类型提示?

但此实现不允许使用类型提示。因为枚举条目都是字符串。

我有什么办法可以说

function($a) {

}
Run Code Online (Sandbox Code Playgroud)

$a必须是'foo','bar''baz'

在 PHP 中?

我使用 phpstorm/intellij 所以如果有另一种方法可以做到这一点,那也很好。例如,在文档中说,但是使用 phpstorm 的自动完成魔法,或者可能是编译错误。

php enums type-hinting

6
推荐指数
2
解决办法
5490
查看次数

使用Android studio推送到云服务时,"请生成新的标识符"错误

我成功将项目导入谷歌云.我在Mac上运行android studio.但是,当我尝试将项目推送到云存储库时,我收到错误:

致命:远程错误:无效的身份验证凭据.请生成新的标识符:https:
//source.developers.google.com/auth/start?sscopes = https://www.googleapis.com/auth/cloud-platform

我迷失在这里,Android工作室,git和谷歌云对我来说都是新手.

错误提供的帮助链接没有提到我应该获取新凭据的位置.运行机器命令我收到错误:

机器:没有接受任何参数

git android-studio google-cloud-platform

6
推荐指数
4
解决办法
6343
查看次数

在 Symfony 4.1 中使用 grpc,“找不到类 'Grpc\ChannelCredentials'。”

根据 php 的 grpc 文档“ https://grpc.io/docs/quickstart/php.html ”将所有内容设置为使用 grpc 后,我尝试从编译一些 proto 文件中获得的类构建一个客户端对象使用 proto 编译器。

$rezept_nameservice_client = new Rezept_NameserviceClient('localhost:8082',
        [ 'credentials' => Grpc\ChannelCredentials::createInsecure()]);
Run Code Online (Sandbox Code Playgroud)

当我尝试运行我的代码时,出现以下异常:

尝试从命名空间“App\Controller\Grpc”加载类“ChannelCredentials”。您是否忘记了另一个命名空间的“use”语句?

工作环境:

  • Ubuntu 18.04
  • 风暴
  • Symfony 4.1
  • nginx 1.14.0
  • grpc v1.15.0
  • protobuf v3.6.1

我已经尝试了不同的方法来解决我在这里发现的问题:

这个问题最接近我遇到的问题

php symfony grpc

6
推荐指数
1
解决办法
1798
查看次数

如何在 Symfony 4 上的控制台命令中使用记录器?

我最近从使用 Symfony 2.7 转向使用 4.2。

以前在我的命令中为了记录到文件,我使用了类似的内容:

$logger = $this->getContainer()->get('logger');
$logger->error('put this in log');
Run Code Online (Sandbox Code Playgroud)

此功能似乎已更改。我可以从控制器登录https://symfony.com/doc/current/logging.html

我可以使用以下命令输出到控制台:

$logger = new ConsoleLogger($output);
$logger->log('error','Put this in the log file');
Run Code Online (Sandbox Code Playgroud)

但尽管我盯着 symfony 网站上的信息,我还是不知道如何通过命令使用 symfony 4.2 登录到文件。

php dependency-injection symfony symfony4

6
推荐指数
1
解决办法
7017
查看次数

如何在Wordpress中更改PHPSESSID cookie域名?

我有一个WordPress网站,它使用域名设置PHPSESSID cookie www.example.com

我希望将其设置为.example.com以便可以在子域中使用它。

php cookies wordpress

6
推荐指数
1
解决办法
317
查看次数

使用 Doctrine 生成迁移时如何禁用 FOREIGN KEY CONSTRAINT?

我经常更改/添加实体中的一些字段并用于bin/console make:migration生成迁移,这就像在 Rails 或 Django 中一样方便。ManyToOne但当我使用教义关系( , ...)时,我不需要外键约束OneToMany

我必须删除生成的迁移中包含外键约束的行。但是当我对 Entity 进行一些更改并运行时bin/console make:migration,它会再次添加外键约束,这很烦人。

我不关心数据一致性。

在Django模型中,您可以设置ForeignKey db_constraint=False,这样迁移就不会产生外键约束。

《Doctrine》里有类似的设定吗?

doctrine symfony

6
推荐指数
3
解决办法
5596
查看次数

有不止一种方法违反单一职责原则吗?

我对单一职责原则很困惑。该原则指出,类更改的原因应该只有一个。

我面临的问题是,对方法的任何更改或做事中的任何逻辑更改都会更改类。例如,考虑以下类:

class Person{
    public void eat(){ };
    public void walk(){ };
    public void breathe(){ };
    public void run(){ };
    public void driveCar(Car car){ };
}
Run Code Online (Sandbox Code Playgroud)

鲍勃叔叔将其描述为应该只有一个人/演员负责更改。我有以下两个问题:

  1. 对于上面的类,谁是可以负责变化的演员/人?
  2. 饮食、呼吸或行走的逻辑的任何变化不会改变 Person 类吗?那么这是否意味着每一种方法都是改变的理由,因为做事的逻辑可能会改变?

java oop design-patterns single-responsibility-principle solid-principles

6
推荐指数
1
解决办法
433
查看次数

如何使用动态连接参数使用 Symfony Mailer 发送邮件?

我正在尝试发送带有动态 SMTP 连接参数的电子邮件。这些参数将从数据库中检索。因此,按照官方文档中的说明指定文件中的参数.env(例如MAILER_DSN=smtp://user:pass@smtp.example.com:port:)或在文件中定义多个传输不符合我的要求。.yaml

如何以编程方式发送定义邮件传输的电子邮件?例如,我想做:

// I'd like to define $customMailer with some data retrieved from DB

$email = (new TemplatedEmail())
    ->from(new Address('example-from@example.com', 'Example'))
    ->to('example-to@example.com')
    ->subject('Subject')
    ->htmlTemplate('emails/my-template.html.twig')
    ->context([]);

$customMailer->send($email);
Run Code Online (Sandbox Code Playgroud)

php symfony symfony-mailer

6
推荐指数
1
解决办法
3155
查看次数

PHP 8.1 中 readonly 有什么好处?

在 PHP 8.1 中,readonly 关键字现已可用。我很好奇它的目的。它是为了帮助编辑者认识到某个属性是只读的,还是为了帮助客户理解这个特性,还是有其他目的?

php oop immutability php-8.1

6
推荐指数
1
解决办法
2541
查看次数