我试图在PHP中创建一个变量,其名称等于MySQL表中的一个条目。
我有四张桌子。在每个表中都有一个名为“release”的列。在每一行中,release中的条目可以不同,但通常有10多行在release中具有相同的条目。
我的目标是计算每个表中每个存在的“释放”的数量,如果更多的表具有相同的释放量,那么我就要对这些量进行求和。
例如:
表1有20个版本称为“releaseAX”,12个版本称为“releaseBX”
表2有14个版本称为“releaseBX”,10个版本称为“releaseCX”
最后,我希望有3个自动生成的变量,称为releaseAX、releaseBX和releaseCX。其值应为releaseaax=20,releaseBX=26(12+14),releaseCX=10。
(我不知道一开始发布的所有版本的名称)
我已经设法让它显示每个表中所有版本的名称以及每个版本的相关条目数量。
获取我所使用的所有版本

$releasesSW = mysqli_query($con, 'SELECT DISTINCT LK_Release FROM requirementspecificationsw');

显示它们以及我使用的相关条目数
while($row = mysqli_fetch_object($releasesSW))
{
echo "Releasename: " . "$row->LK_Release". "<br>" . " -- Number of entries: ";

$count = mysqli_query($con, "SELECT COUNT(LK_Release) AS Numbeer FROM
requirementspecificationsw WHERE LK_Release = '$row->LK_Release' ");
$data = mysqli_fetch_assoc($count);
echo $data['Numbeer'];
echo "<br>";

}

有什么办法吗?

最佳答案

您可以创建dynamic variable这样:

${(string)$row->LK_Release} = $data['Numbeer'];

注意这两个$s,这意味着变量将被命名为$row->LK_Release包含的任何内容,而{}语法使用(string)是因为您需要转换为字符串。
你可以这样做:
echo $releaseAX;

或者$releaseBX$releaseCX,或者您想要的任何版本名。

10-06 08:05