PHP在启动时加载一个函数

时间:2012-05-07 23:09:44

标签: php

我正在做一些PHP编程并且有一个问题:如何在首次运行PHP脚本时加载PHP函数,并且只在首次运行时才加载?

感谢

4 个答案:

答案 0 :(得分:4)

您可以使用锁定文件

$lock = "run.lock" ;

if(!is_file($lock))
{
    runOneTimeFuntion(); //
    touch($lock);
}

修改1

一次性功能

runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();
runOneTimeFuntion ();

function runOneTimeFuntion() {
    if (counter () < 1) {
        var_dump ( "test" );

    }

}

function counter() {
    static $count = 0;
    return $count ++;
}

输出

string 'test' (length=4)

答案 1 :(得分:1)

每当你启动php脚本时,无论它被称为befor多少次,他都会以新脚本开始。

如果您知道重新声明的函数(在PHP中是禁止的),则使用外部函数加载函数:

<?php require_once(my_function_file.php); ?>

如果你想要scrpt,请记住他是否被称为befor,可以使用某种形式的日志记录(数据库\文件)并将其解压缩...但是我没有看到任何理由功能负载...

答案 2 :(得分:0)

或者使用普通布尔值......

$bFirstRun = true;

if( $bFirstRun ) {
    run_me();
    $bFirstRun = false;
}

答案 3 :(得分:0)

有一个名为function_exists

的PHP函数

您可以在此功能中定义自己的功能,然后您可以查看是否存在此功能。

if (!function_exists('myfunction')) {
  function myfunction() {
    // do something in the function
  }
  // call my function or do anything else that you like, from here on the function exists and thus this code will only run once.
}

在此处详细了解function_exists:http://www.php.net/function_exists