いくつかの関数出力を表示するための簡単なサンプル php ファイルを作成しました。ここにコードがあります..
<?php
// $printName = hello('samitha');
// $printHeader = pageHeader('main','on');
switch (key($_GET)){
case 'red':
$printHeader = pageHeader('red','on');
$printName = hello('Joel');
break;
case 'blue':
$printHeader = pageHeader('blue','off');
$printName = hello('Duck');
break;
case 'yellow':
//$printHeader = pageHeader('yellow','on');
break;
}
function hello($name){
return $name;
}
function pageHeader($header,$onoff){
if ($onoff == 'on') {
return $header."page header<br>";
}
else {return null;}
}
echo $printHeader;
echo $printName;
?>
このコードは問題なく正常に動作しています。
「example.com/php/tipo34.php?red」を呼び出すと、画面に次のように表示されます。
redpage header
Joel
そして、「example.com/php/tipo34.php?blue」を呼び出すと、画面に次のように表示されます。
Duck
以下の関数を、tipo34-req.php という別の php ファイル内に配置しようとしたところ、次のエラーが発生しました。
Fatal error: Call to undefined function pageHeader() in C:\wamp\www\php\tipo34.php on line 8
私が試したコード:
<?php
// $printName = hello('samitha');
// $printHeader = pageHeader('main','on');
switch (key($_GET)){
case 'red':
$printHeader = pageHeader('red','on');
$printName = hello('samitha');
break;
case 'blue':
$printHeader = pageHeader('blue','off');
$printName = hello('kalum');
break;
case 'yellow':
//$printHeader = pageHeader('yellow','on');
break;
}
include 'tipo34-req.php';
echo $printHeader;
echo $printName;
?>
tipo34-req.php コード:
<?php
function hello($name){
global $name;
return $name;
}
function pageHeader($header,$onoff){ global $header, $onoff
if ($onoff == 'on') {
return $header."page header<br>";
}
else {return null;}
}
?>
この問題を解決するにはどうすればよいですか? ファイルで関数を直接使用すると機能しますが、関数を別のphpファイルに配置すると、エラーがスローされます。
ありがとう。