2016-04-03 20 views
-1

のindex.php:PHP関数と変数

<?php 
    require("lib.php"); 

    echo getName(); 
?> 

がlib.php:

<?php 
    $name = "Matej"; 

    function getName() { 
     return $name; 
    } 
?> 

コードは仕事をdoesntの、私はPHPは機能のoutsite変数フォームを取得カントそのbecouseと思います。どのようにそれを修正するには?

+0

1)、説明* *は動作しません何を、何を期待するとどのようなあなたが今2を取得)何かがうまくいかない場合は、エラー報告を追加各ファイルの先頭に 'ini_set(" display_errors "、1);と書かれています。 error_reporting(E_ALL); 'とエラーをチェックする3)*" PHP cantが関数の外出先で変数の形を取ると思う "* < - もし問題が何かを推測できたら、それを承認するか否かを試してみてください。 – Rizier123

答えて

0

可変スコープhereについては、傾けることができます。グローバル変数を使用する場合は、キーワードglobalを使用してください。

function getName() { 
    global $name; 
    return $name; 
} 

...でも、グローバルは悪です。あなたの場合、このような関数は役に立たない。単に$nameを使用してください。

0

あなたは関数の外で$ nameの値を取得しようとしていますが、その値を送る関数を呼び出すことができます。

0

理由は、変数にグローバルキーワードがないためです。あなたは、「コードのdoesntの仕事」との質問を記述する場合

$name = 'hello'; 
function name() { 
    return global $name; 
}