从另外 2 个变量创建一个 PHP 变量

  • 本文关键字:变量 一个 PHP 创建 php
  • 更新时间 :
  • 英文 :


我正在创办一本有3个版本的杂志。英国、美国和欧洲。每个都将在不同的时间在线发布,因此每个都有不同的期号。

所以我想创建一种选择哪个问题与哪个版本一起使用的方法,但我不知道如何将这两个部分连接在一起。我使用的代码是:

<?php
$this_edition = "UK";
?>
<?php
$UK_issue = "1";
$US_issue = "3";
$EU_issue = "2";
?>
<?php
$this_issue = // The Issue Relating to This Edition
?>

我在这里要做的基本上是调用问题编号(1/3/2(,这与我正在$edition有关,在这种情况下,英国。

所以本质上是:$this_issue = $edition_issue

有谁知道我该怎么做?

你想做的事情是可能的...

$this_issue = ${$this_edition.'_issue'};

但是最好使用 pr1nc3 建议的解决方案。

一个数组怎么样,这样你就有keysvalues来匹配?

例如$magazine = [1 => 'UK', 2 => 'US', 3 => 'EU'];

Array
(
[1] => UK
[2] => US
[3] => EU
)

您的阵列键(问题(与国家/地区(版本(匹配

您可以使用关联数组,如下所示。

<?php
$this_edition = "UK";
$edition['UK'] = 1;
$edition['US'] = 2;
$edition['EU'] = 3;
$this_issue = $edition[$this_edition];
?>

一个数组怎么样,这样你就有键和值来匹配?

$magazine = array(1 => 'UK', 2 => 'US', 3 => 'EU');
$issue=1;
echo $magazine[$issue];

输出将是

UK

我想你已经得到了答案,但是如果您需要在数组中保存有关版本和问题的更多详细信息,只想向您展示另一种方式。

<?php
$this_edition = "UK";
$editions = array("UK"=>array("name"=>"UK Edition","value"=>1), "US"=>array("name"=>"US Edition","value"=>2), "EU"=>array("name"=>"EU Edition","value"=>3));
echo $this_issue = $editions[$this_edition]["name"];
?>

输出:英国版

如果您将信息保存在映射数组中,您将能够在您需要的任何时候非常轻松地接收它们。

最新更新