如何从函数中访问特定参数,例如:
function someFunction()
{ echo $a = 7;
echo $b = 70;
}
someFunction();//770
如何才能仅返回$a
或$b
?
答案 0 :(得分:2)
echo
vs return
首先,我认为重要的是要注意echo
和return
具有非常不同的行为,并且在非常不同的环境中使用。 echo
只输出传递给它的任何内容,可以输出到html页面,也可以输出到服务器日志。
<?php
$a = 5;
function printFoo() {
echo 'foo';
}
echo '<h1>Hello World!</h1>'; // prints an h1 tag to the page
echo $a; // prints 5 to the page
foo(); // prints foo to the page
?>
另一方面, return
用于“[end]执行当前函数,并将其参数作为函数调用的值返回。” return
只能接受一个论点。它也只能在函数中执行一次;一旦到达,代码将跳出函数回到调用函数的位置。
<?php
function getFoo() {
return 'foo';
}
// print the value returned by getFoo() directly
echo getFoo();
// store it in a variable to be used elsewhere
$foo = getFoo(); // $foo is now equal to the string 'foo'
function getFooBar() {
return 'foobar'; // code beyond this statement will not be executed
echo 'something something';
return 'another foobar';
}
echo getFooBar(); // prints 'foobar'
?>
目前,someFunction
只能返回$a
或$b
或包含$a
和$b
的数组,如果说,这可能会成为一个问题,你需要打印$c
。为了使函数更具可重用性,您可以将它传递给argument,然后在任何您喜欢的地方重用该函数。
<?php
function printSomething($myVar) {
echo $myVar;
}
$a = 7;
$b = 70;
$c = 770;
printSomething($a) . '\n';
printSomething($b) . '\n';
printSomething($c) . '\n';
printSomething(7000); // you don't have to pass it a variable!
// Output:
// 7
// 70
// 700
// 7000
?>
答案 1 :(得分:0)
如果您只希望返回一个参数,那么您只需使用return语句。
<?php
function someFunction()
{
$a = 7;
$b = 70;
return [$a, $b];
}
$arrayS = someFunction();//array containing $a and $b
echo $arrayS[0]."\n";
echo $arrayS[1]."\n";
echo "\n";
echo "Another way to access variables\n";
echo someFunction()[0]."\n";
echo someFunction()[1]."\n";