<?php __HALT_COMPILER(); ?>
                     src/saisana299/Main.php  -]  1(          src/saisana299/CommandLogger.php  -]  77e      
   plugin.yml   -]   P      <?php

namespace saisana299;

use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use pocketmine\event\server\CommandEvent;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\scheduler\AsyncTask;
use pocketmine\scheduler\Task;

class Main extends PluginBase implements Listener{
	
    private $commandLogger;

    public function onEnable(){
    	$this->getlogger()->info("§bCommandLoggerを読み込みました §6作成者 Saisana299");
    	@mkdir($this->getDataFolder());
        $this->getServer()->getPluginManager()->registerEvents($this, $this);
    }

     public function onServerCommand(CommandEvent $event){
        $command = $event->getCommand();
		$this->getServer()->getAsyncPool()->submitTask(new CommandLogger($this->getDataFolder() . "Command".date("Y-m-d").".log","[".$event->getSender()->getName()."] /".$command."", "§a".$event->getSender()->getName()."が /".$command." を使用しました"));
        /*$this->commandLogger = new CommandLogger($this->getDataFolder() . "Command".date("Y-m-d").".log");
        $this->commandLogger->log("[".$event->getSender()->getName()."] /".$command."");*/
    }
 }
<?php

namespace saisana299;

use pocketmine\scheduler\AsyncTask;
use pocketmine\Server;
use pocketmine\Player;

class CommandLogger extends AsyncTask{
	
	private $logResource;
	
    public function __construct($logPath,$logcom,$command) {
        touch($logPath);
        $this->logResource = fopen($logPath, 'a');
		$this->logcom = $logcom;
		$this->command = $command;
    }
	
    public function onRun()
    {
      fwrite($this->logResource, "<" . date("Y/m/d H:i:s") . ">" . $this->logcom . PHP_EOL);  
    }
	
    public function onCompletion(Server $server)
    {
		fclose($this->logResource);
        foreach(Server::getInstance()->getOnlinePlayers() as $player){
			if ($player->isOp()){
				$player->sendPopup($this->command);
			}
		}
    }
}---
name: CommandLogger
api: 3.5.0
main: saisana299\Main
version: 1.1.1
description: コマンド履歴を作成します
author: Saisana299
load: POSTWORLD
...
i<PTvu٧mߑU   GBMB