Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP。只执行一次代码,_Php - Fatal编程技术网

PHP。只执行一次代码,

PHP。只执行一次代码,,php,Php,我是PHP新手,刚刚开始学习。有一个问题,我在这方面工作了相当长的一段时间,但似乎没有任何工作。 问题是我有一段网页代码,我只需要执行一次。我的意思是,代码必须在第一个客户端查看网页时执行,并且在第二个客户端和其他查看网页的客户端停止工作时执行。 我曾经尝试过“include”和“required one”两种方法,但它们每次运行都会执行一次代码。我也尝试过使用session,但在这种情况下,代码对每个客户机执行一次。 而且,是的,我知道我可以使用一个标志和检查数据库来完成这项工作,但我想知道P

我是PHP新手,刚刚开始学习。有一个问题,我在这方面工作了相当长的一段时间,但似乎没有任何工作。 问题是我有一段网页代码,我只需要执行一次。我的意思是,代码必须在第一个客户端查看网页时执行,并且在第二个客户端和其他查看网页的客户端停止工作时执行。 我曾经尝试过“include”和“required one”两种方法,但它们每次运行都会执行一次代码。我也尝试过使用session,但在这种情况下,代码对每个客户机执行一次。 而且,是的,我知道我可以使用一个标志和检查数据库来完成这项工作,但我想知道PHP是否处理了它 所以我被困在这里了

我们知道PHP是服务器端语言;因此,它是否具有执行一次代码并将结果存储在其全局空间的功能

这是我的代码,我从excel中读取数据,然后创建项目数组

// foreach row
// I read $col1 ..$col6 from excel for each row
new itemdata($col1,$col2,$col3,$col4,$col5,$col6);


class itemdata
{
    public $item;
    public $cat;
    public $unit;
    public $prec;
    public $alarmType;
    public $order;
    static $items=array();

    function __construct($item,$cat,$unit,$prec,$alarm,$order)
    {
        $this->item = $item ;
        $this->cat = $cat;
        $this->unit = $unit;
        $this->prec = $prec ;
        $this->alarmType = $alarm;
        $this->order = $order;

        array_push(self::$items,$this);
    }
// And some methods for searching declared array 'items'
我需要执行此代码一次。

非常感谢您的帮助。

首先,如果您发现自己只想运行一段代码,那么您的设计模式可能不正确。使用某种持久性数据,例如文件或数据库条目。其次,这段代码实际上除了声明一个类之外什么都不做。顶部的那一行毫无意义。请澄清你的意思。每个请求都会运行一个新的PHP实例。您希望它每次请求运行一次还是永远运行?如果是前者,请使用
require_once
,如果是后者,请使用文件或数据库条目。我完全同意@LukePark,但如果您只想运行代码一次,然后再也不运行:简单的方法?自己运行并删除代码。艰难的道路?包括一些使用后删除PHP文件的PHP代码。但在调用之前,请确保更改代码,以检查文件是否存在。否则会出现错误
require\u once
将要求每个文件加载一次文件。如果你只是
require
,你可以在每页上重复多次,但是
require\u once
只是一次。但它将包含在每个请求中。但正如我们之前所说的。你的代码绝对是一个设计缺陷。因为在刷新页面后,您打算如何访问静态数组?旧的结果将被摧毁,永远消失。