これはばかげた質問かもしれませんが、次のようなコードがあります。
$userData = array_map('htmlentities', mysql_fetch_assoc(mysql_query(
"SELECT * FROM `smf_members`
WHERE `id_member` = (SELECT `id_member` FROM `smf_log_online` WHERE `session` = '" . mysql_real_escape_string($session) . "')"
)));
function printHeader()
{
$header = <<<eof
<!DOCTYPE html>
<html lang="en">
<head>
...
<li><a href="#"><img src="images/avatar.gif" alt="" /> {$userData['member_name']}</a>
...
eof;
echo $header;
}
それは次のような名前のファイルにconfig.php
ありrequire
、私のインデックスページに次のように編集されています。
<?php require 'config.php';printHeader(); ?>
ただし、printHeader()
関数内$userData
では設定されていませんprint_r($userData)
。グローバルスコープで設定されているかのようです。残りの「グローバル」コードをある種のコンストラクターに入れる必要がありますか? それとも、本当に小さな何かが欠けていますか。
ありがとう