2013-03-01 149 views
1

我想要做的就是调用保存在variables.php文件中的一个变量的所有元标记。在PHP中将多个变量分配给单个变量

我可以单独回显它们,但我想为它们分配所有相同的名称,以便网页中的回显脚本更小。据我所知,你这是怎么分配相同的价值为整数,但我不能找到解决办法来处理字符串值做到这一点(我认为他们是串吧?)

$john = $ jane = 3; 

我试图。

$metaAuthor = $metaDescription = $metaImage = $metaTitle =$meta; 

当你不使用数字时,我认为它有不同的命令吗?

+0

所以'metaAuthor '和描述和标题等一样吗? – UnholyRanger 2013-03-01 17:40:00

+0

相反,$ meta代表所有其他值 – 2013-03-01 17:48:15

回答

1

这对每一个数据类型,字符串,整数,数组等都是一样的。

小演示在这里:

http://sandbox.onlinephpfunctions.com/code/325104e0194b11b98fd7df58953aec4b0deb1468

房颤您的评论,你可能希望这样的:

$meta = $metaAuthor." ".$metaDescription." ".$metaImage ." ".$metaTitle; 

数组是这样的:

$meta = array("author" => $metaAuthor, "description" => $metaDescription); 
echo $meta['author']; 
+0

所以他们都承担了$元的价值,但这并没有给他们的价值!我如何给他们所有的价值观,可以这样做? – 2013-03-01 17:44:21

+0

比你需要使用一个数组。或者如果你想把它全部放在一个字符串中:'$ meta = $ metaAuthor。“”.metaDescription。“”。$ metaImage。“”。$ metaTitle;' – 2013-03-01 17:46:37

+0

所以这就是数组如何工作,好吧我会试试这个 – 2013-03-01 17:48:59

1

不,它与每个值类型都是一样的。

http://sandbox.onlinephpfunctions.com/code/9211ff6bebf264fa106c28a85d789b8fb6b42c99

<?php 
$meta = 'TEST'; 
$metaAuthor = $metaDescription = $metaImage = $metaTitle = $meta; 
echo $metaAuthor."\n"; 
echo $metaDescription."\n"; 
echo $metaImage."\n"; 
echo $metaTitle."\n"; 
echo $meta."\n"; 
// all variables have now become equal to $meta 
+0

当我回显$ meta时,我怎么没有收到输出?是因为我分配一个变量 – 2013-03-01 17:41:16

+0

等待我刚才理解 – 2013-03-01 17:42:52

+2

可能是因为你没有给它设置一个值。它从右到左这样:$ x = $ y = $ z;'所有变量将变成等于'$ z' – 2013-03-01 17:43:12

0

您的代码应指派任何值是$meta所有其他变量。在PHP中,“返回值”或赋值结果就是被赋值的值。只要$ meta包含某些东西,那么其他地方也应该分配一些东西。

例如

php > $x = $y = $z = 7; 
php > var_dump($x, $y, $z); 
int(7) 
int(7) 
int(7) 
php > $a = $b = $c = 'hello'; 
php > var_dump($a,$b,$c); 
string(5) "hello" 
string(5) "hello" 
string(5) "hello" 
php >