如何在函数外部的函数中创建变量?

时间:2011-11-30 23:21:10

标签: php

function nothing() { 
    echo $variableThatIWant; 
}

5 个答案:

答案 0 :(得分:4)

更好的方法是将其作为参数传递。

function nothing($var) {
    echo $var;
}

$foo = 'foo';
nothing($foo);

邪恶的方式,我不知道为什么我甚至会告诉你这个,就是使用全球。

function nothing() {
    global $foo;
    echo $foo;
}

$foo = 'foo';
nothing();

答案 1 :(得分:4)

您可以在要使用的变量之前加上“global”,如下所示:

<?php
    $txt = "Hello";
    function Test() {
        global $txt;
        echo $txt;
    }
    Test();
?>

或者: 你可以把它作为参数传递,像这样:

<?php
    $txt = "Hello";
    function Test($txt) {
        echo $txt;
    }
    Test($txt);
?>

来源:http://browse-tutorials.com/tutorial/php-global-variables

答案 2 :(得分:3)

您必须使用global

$var = 'hello';

function myprint()
{
   global $var;
   echo $var;
}

答案 3 :(得分:2)

如果您在班级内,也可以使用class property(或成员变量):

<?php

$myClass = new MyClass();
echo $myClass->nothing();

class MyClass {

  var $variableThatIWant = "something that I want";

  function nothing() { 
    echo $this->variableThatIWant; 
  }
}

Codepad example

答案 4 :(得分:1)

如果您想在函数内修改它而不必返回它,可以通过reference传递它:

$a = "hello";
myFunction($a);
$a .= " !!";
echo $a; // will print : hello world !!

function myFunction(&$a) {
  $a .= " world";
}

Codepad example