0

さて、私の を見てくださいpage.php。その中で私の問題を説明します。

<?php
$var= "<p>Hello world</p>";

function myfunction1($a){
echo $a;
}

//then
myfunction1($var);//-->OK, return "Hello world!"


//but, the thing is, i don't want to pass any argument into myfunction(), 
//so i have to import the external $var into myfuntion2()


function myfunction2(nothing here){
//what's here?
}

myfunction2();//i want to do this

?>

もちろん、これらすべてを CLASS 内にラップしmyfunction()$var ( method $amp; property OOP スタイル) にすると、これらに簡単にアクセスできます! でも、やりたくない!

それで、それは可能ですか?誰でも私に提案をすることができますか?ありがとう

4

4 に答える 4

1

これは、最新バージョンの PHP で実行できます。

$var = 'World';
$func = function() use($var){
  echo "Hello $var";
};

$func(); //=> Hello World
于 2013-08-13T04:46:33.983 に答える
0

関数内で変数をグローバルとして宣言する必要があります。その後、変数をパラメーターとして渡さずに関数内で使用できます。

このような、

<?php
   $var= "<p>Hello world</p>";

   function myfunction1($a){
     echo $a;
   }
  //then
  myfunction1($var);//-->OK, return "Hello world!"

  //but, the thing is, i don't want to pass any argument into myfunction(), so i  have to    import the external $var into myfuntion2()
  function myfunction2(){
     global $var;
     echo $var;
  }

  myfunction2();//i want to do this

?>
于 2013-08-13T04:51:02.917 に答える
0

またはシングルトンを使用します。

function myfunction2(){
    echo MySingleton::getInstance()->var2;
}
于 2013-08-13T04:48:32.180 に答える