PHP函数来打印函数被调用的次数
我试图创建一个函数,计算它被调用的次数 这是我的密码:PHP函数来打印函数被调用的次数,php,Php,我试图创建一个函数,计算它被调用的次数 这是我的密码: <?php function print_calls() { count(print_calls); } print_calls(); ?> 您可以为此使用静态变量: function print_calls() { static $callCount=0; printf("%d\n", ++$callCount); } 请注意,这仅保留当前进程的计数,因此如果在web服务器中使用此项,则访问的每个页面
<?php
function print_calls() {
count(print_calls);
}
print_calls();
?>
您可以为此使用静态变量:
function print_calls() {
static $callCount=0;
printf("%d\n", ++$callCount);
}
请注意,这仅保留当前进程的计数,因此如果在web服务器中使用此项,则访问的每个页面的计数都将重置。如果需要持续计数,则必须将其写入文件或使用$\u会话变量。类似的内容
<?php
function callCount(){
static $calls=0;
echo $calls++;
}
callCount();
?>
php > $counter = 0;
php > function ciao() { global $counter; $counter++; echo $counter; }
全局变量可能很危险。小心犯规
您可以将变量定义为计数器和使用该外部变量的函数
php > $counter = 0;
php > function ciao() { global $counter; $counter++; echo $counter; }
从现在起。。。每次调用该函数时,它都会打印递增的变量。这是因为$counter
的作用域不是函数的局部作用域,而是文件的全局作用域
php > ciao();
1
php > ciao();
2
php > ciao();
3
php > ciao();
4
php > ciao();
5
他问“我在尝试做一个函数”,而不是“我在尝试计算所有函数”。从这个问题上看,他是否只想将其用于一个函数或用于分析还不太清楚。您想要的是printf
,而不是print
,请参见@iainn的评论