【发布时间】:2012-07-18 04:08:14
【问题描述】:
这看起来很简单,但我在任何地方都找不到解决方案。
我想要做的是将变量的 contents(r 值)添加到关联数组,而不是对变量的 reference。
例如,我想要这个:
$myStr1 = "sometext";
$myStr2 = "someothertext";
$myArray = array(
"key1"=>$myStr1,
"key2"=>$myStr2
);
echo($myArray["key1"]);
制作这个:
"sometext"
而不是这个:
"1" // why??
任何帮助将不胜感激。
编辑:
以上作品;我的错。这是 real 问题 - 我的 $myStr1 变量不只是像上面那样分配一个字符串文字;它是使用以下语法创建的:
$myStr1 = "sometext" + anObject->intProperty + "moretext";
基本上我使用+ 将各种类型连接成一个字符串。也许+ 没有做我认为它正在做的事情?
编辑:
绝对是+ 运算符。我将所有非字符串转换为字符串,并改用. 连接。
【问题讨论】:
-
ideone.com/ywwma --- 您的代码按预期工作
-
废话。好吧,我想我有一些调查工作要做。感谢您指出这一点。
-
你使用的是什么 PHP 版本?
-
@ShaquinTrifonoff 我正在使用 5.4.3。
-
为了记录,PHP 中的 + 运算符只执行加法,如果您将它与字符串一起使用,它只会尝试将字符串转换为值 (1) 并添加它们。 (以防万一还不清楚)
标签: php arrays string variables associative-array