从PHP中的函数返回连接字符串

时间:2014-07-16 10:10:19

标签: php arrays return echo concatenation

在PHP中,我创建了一个数组,它存储了需要多次连接的值,因此创建了一个附带的函数来在需要时执行连接。但是,该函数似乎不返回数组的值,但会返回字符串的纯文本部分:

$my_array = array ("id" => "test");

$test = "First part " . $my_array['id'];
echo $test;   // <-- returns "First part test"

function concatenate(){
           $test_2 = "First part " . $my_array['id'];
            return $test_2;     
}

$use_function = concatenate();
echo $use_function;  // <-- returns "First part". Does not include array information.

任何关于为什么会发生这种情况的想法或更好的方法来接近这一点都将非常感激。谢谢。

4 个答案:

答案 0 :(得分:0)

$my_array = array ("id" => "test");

$test = "First part " . $my_array['id'];
echo $test;   // <-- returns "First part test"

function concatenate($my_array){
           $test_2 = "First part " . $my_array['id'];
            return $test_2;     
}

$use_function = concatenate($my_array);
echo $use_function;

这是一个小错误..在调用函数时请小心..

答案 1 :(得分:0)

你不能在这个函数中使用$ my_array变量!你必须使用数组作为参数使其成为全局或调用函数:

功能: function concatenate($arr, $string = "First Part "){ return $string . $arr['id']; }

致电:concatenate($my_array);

答案 2 :(得分:0)

试试这个

$my_array = array ("id" => "test");

function concatenate($my_array){
           $test_2 = "First part " . $my_array['id'];
            return $test_2;     
}

$use_function = concatenate($my_array);
echo $use_function;

<强>输出:

First part test

答案 3 :(得分:0)

尝试使用此代码

$my_array = array ("id" => "test");
$test = "First part " . $my_array['id'];
echo $test;   // <-- returns "First part test"

function concatenate($myArray){
           $test_2 = "First part " . $myArray['id'];
            return $test_2;     
}

$use_function = concatenate($my_array);
echo $use_function;

如果此函数在类中,您可以在函数内使用它:

$test_2 = "First part " . $this->my_array['id']

您的功能不知道my_array [&#39; id&#39;]这就是为什么它无法返回任何内容