小编WeS*_*See的帖子

Gihub repo所有者(Yii2用户)离开了存储库 - 如何进行?

Yii2-user是一个非常流行的用户管理Yii2扩展.有很多叉子和贡献者.许多问题和PR正在等待整合或至少得到回答.

但是,自从3个月以来,回购所有者没有任何活动,与之前的活动相比,这对他来说非常不典型.

目前我坐在叉子上并维护我的分支机构.这可以在短时间内工作,但我不会从其他人那里获得PR,并且不能再与原始仓库同步.

如果所有者放弃其回购(并且无法联系),使回购存活的常见做法是什么?如何作为单个叉所有者和所有叉所有者的社区进行?

php github yii2

16
推荐指数
1
解决办法
129
查看次数

PHP运算符 - > {...}是什么意思?

我最近在PHP代码中看到了这一行:

$dbObject = json_decode($jsonString);
$dbObject->{'mysql-5.4'}[0]->credentials
Run Code Online (Sandbox Code Playgroud)

这是什么意思?在PHP文档中我们可以阅读,那

方括号和花括号可以互换使用来访问数组元素(例如$ array [42]和$ array {42}在上面的例子中都会做同样的事情).

但是如何定义Object $ dbObject以允许->{...}[...]访问?这段代码有点不安全吗?哪个PHP版本允许这个?

我错过了PHP文档中的任何内容吗?

php operators

14
推荐指数
2
解决办法
1131
查看次数

Github:如何解决挂起的拉取请求?

我的仓库是来自上游仓库2amigos/yii2-usuario的一个分支。

\n

我的回购协议背后有一些提交。我想重新同步所有提交并通过切换基础创建拉取请求,以便上游存储库合并到我的存储库中。

\n

创建拉取请求时,Github 说

\n
Able to merge. These branches can be automatically merged.\n
Run Code Online (Sandbox Code Playgroud)\n

但是,当创建拉取请求时,Github 仅显示

\n
Checking for ability to merge automatically\xe2\x80\xa6\nHang in there while we check the branch\xe2\x80\x99s status.\n
Run Code Online (Sandbox Code Playgroud)\n

我无法执行任何操作,既无法终止拉取请求也无法解决它。\n我应该做什么?

\n

github pull-request

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

PHP 8:类中的枚举?

我有一个仅适用于两种类型a和 的课程b

我今天的“旧式”代码:

class Work1 {
    public function do(string $type):string {
        if ($type!="a" && $type!="b")
            throw new Error("wrong type");
        return "type is $type";
    }
}
echo (new Work())->do("a"); // type is a
echo (new Work())->do("c"); // exception: wrong type
Run Code Online (Sandbox Code Playgroud)

现在有了 PHP 8,我们有了enum更好的参数检查选项:

enum WorkType {
    case A;
    case B;
}
class Work2 {
    public function __construct(private WorkType $type) {}
    public function do() {
        return "type is ".$this->type->name;
    }
}
echo (new Work2(WorkType::A))->do(); // type …
Run Code Online (Sandbox Code Playgroud)

php php-8

8
推荐指数
1
解决办法
3750
查看次数

如何列出所有容器的暴露端口?

我们有很多容器开始使用Rancher,每个容器都暴露多个端口。由于我们是使用Rancher启动容器的,因此默认情况下没有端口暴露给主机。

$ docker container ls 
Run Code Online (Sandbox Code Playgroud)

显示没有由牧场主启动的容器的裸露端口。rancher未安装Rancher CLI 。

如何列出牧场主网络中公开的端口?使用docker命令有可能吗?还是我需要rancher

networking ports docker rancher

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

从Docker容器中获取主机的Mac地址

在我的Docker化应用程序中,我需要具有硬件锚点并考虑使用Container的Mac地址。但是:由于Docker容器的Mac地址是可变的,并且在容器启动时动态分配,因此我无法使用此Mac地址(请参阅Docker文档

MAC地址是使用分配给容器的IP地址生成的,以避免ARP冲突,其使用范围是02:42:ac:11:00:00到02:42:ac:11:ff:ff

Docker主机的Mac地址将是一个可行的解决方案。

如何从在此主机上运行的容器内访问(linux)主机的Mac地址?

linux docker docker-networking

5
推荐指数
1
解决办法
1453
查看次数

SQL:如何检查关系中的行是否存在?

我有第一个表和相关的第二个表,其中有第一个表的外键。

第二个表中的行数范围可以从零行到数百万行(时间序列数据)。

当向最终用户显示第一个表的行时,我想显示第二个表中是否有相关行 - 是或否,不多。

目前,我离开了表并在第二张表上进行了计数。但我怀疑这是一种缓慢且消耗资源的方法,仅用于确定第二个表中是否有相关行。

SELECT
    first.id,
    first.title,
    Count( second.id ) as count
FROM
    first
LEFT JOIN
    second
ON
    first.id = second.first_id
GROUP BY
    first.id
ORDER BY
    count DESC
Run Code Online (Sandbox Code Playgroud)

两个表的主键中都有索引id。数据库是PostgrSQL。

什么是更快和/或更少资源消耗的方式去这里?

sql postgresql

3
推荐指数
1
解决办法
1479
查看次数

PHP:获取 Docker 容器中的容器 ID

如何使用 PHP 获取容器本身内的 Docker 容器 ID?

我刚刚发现 linux 命令如下

DOCKER_CID=$(cat /proc/1/cpuset | cut -c9-)
Run Code Online (Sandbox Code Playgroud)

php containers docker php-7.2

2
推荐指数
1
解决办法
2597
查看次数

Yii2 - hasOne替代品

在Yii2中,我们使用相关模型

class AnyClass {
    ...
    public function getUser()
    {
        return $this->hasOne(User::className(), ['id' => 'user_id']);
    }
}
Run Code Online (Sandbox Code Playgroud)

这个实现有什么区别?

class AnyClass {
    ...
    public function getUser()
    {
        return User::find()->where(['id' => $this->user_id]);
    }
}
Run Code Online (Sandbox Code Playgroud)

我计划使用多个复合键,并认为第二个版本更容易扩展复合键的附加条件.

database activerecord yii2

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

PHP:在没有循环的情况下替换数组中的换行符

我需要替换这个数组中的所有换行符

$fields = [ "hello", "new\nold", "world"];
Run Code Online (Sandbox Code Playgroud)

通过一个|没有循环。

我尝试过array_walk()但失败了。

使用 PHP 7.4

php

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

Yii2:设置时区

我在 Yii2 应用程序中设置了时区,如 config/web.php 中的文档所述:

'timeZone' => 'Europe/Berlin',
Run Code Online (Sandbox Code Playgroud)

但是:这仅对 Yii2 有效,显然不适用于 PHP 函数,例如date(). PHP 时区设置保持不变,因此 PHP 和 Yii2 之间存在差异。

如何使 Yii2 时区成为根据 Yii2 配置中的时区设置设置 PHP 时区的领先时区?

编辑

时区是在应用程序组件中设置的\Yii::$app,而不是在格式化程序组件中设置的。

我无法修改php.ini文件。

php timezone yii2

0
推荐指数
1
解决办法
1万
查看次数