用rand里面显示数组

时间:2014-06-21 22:25:23

标签: php

我有一个数组如:

$var = array('hi','ho',rand(2,5));

我想回应的是整个数组,完全一样。 通常,当您尝试print_r时,它显示为:

Array (
    [0] => hi
    [1] => ho
    [2] => 3
)

但我想:

Array (
    [0] => hi
    [1] => ho
    [2] => rand(2,5)
)

您可以使用file_get_contents获取此信息,但在实际的PHP文件中是否有任何方法可以执行此操作?

2 个答案:

答案 0 :(得分:0)

我认为这是不可能的,因为在创建数组时,会将随机值分配给索引为2的元素,而您无法检查该值的创建方式。

答案 1 :(得分:0)

我不认为这是可能的,因为只要您将数组设置为某个变量就已经评估了rand。

解决方法是将表达式保存为字符串,然后在需要时将其eval保存。像这样:

$varStr = "array('hi','ho',rand(2,5))";
echo $varStr;

// when you actually need it
$var = eval($varStr);

但是,这几乎不是一个好主意。提供您需要的用例可能有助于提出更好的解决方案。