文件名中的变量

时间:2014-04-09 16:14:34

标签: php

session_start();

$username = $_SESSION['username'];

if( isset($_POST['subm_btn']) ) { 
    incrementClickCount();
}

function getClickCount() {
    return (int) file_get_contents("$username.txt");
}

function incrementClickCount() {
    $count = getClickCount() + 1;
    file_put_contents("$username.txt", $count);
}

脚本应计算点击次数并写入名为“username.txt”的文件,但它会创建文件.txt

1 个答案:

答案 0 :(得分:0)

尝试使用全球关键字。

function getClickCount(){
     global $username;
     //remaining code here    
}

incrementClickCount()也做同样的事情。

这是因为两个函数中的变量$username都有一个局部范围,即它引用了该函数的局部变量,并且因为它没有被分配任何值(在函数内),所以默认值为null

global关键字使其范围成为全局,它指的是在两个函数之上声明的$username。有关详细信息,请查看 here