tomnomnom/phpwol

PHP的Wake On LAN

0.1.1 2017-03-21 22:39 UTC

This package is not auto-updated.

Last update: 2024-09-28 14:58:08 UTC


README

使用PHP发送Wake On LAN数据包。

内容

安装

phpwol可在Packagist上找到,因此您可以使用Composer进行安装。只需在您的composer.json中将它指定为依赖项。

{
    "require": {
        "tomnomnom/phpwol": "0.1.0"
    }
}

然后运行composer install

▶ composer install
Loading composer repositories with package information
Installing dependencies
  - Installing tomnomnom/phpwol (0.1.0)
    Downloading: 100%         

Writing lock file
Generating autoload files

安装完成后,您可以使用Composer自动加载器而不是./Phpwol/Init.php中提供的自动加载器。

<?php
require __DIR__.'/vendor/autoload.php';

$f = new \Phpwol\Factory();
$m = $f->magicPacket();

使用方法

使用\Phpwol\MagicPacket对象发送WOL数据包。这样的对象可以通过\Phpwol\Factory::magicPacket()方法获得。

<?php
// ./Examples/Basic.php
require __DIR__.'/../Phpwol/Init.php';

$f = new \Phpwol\Factory();
$magicPacket = $f->magicPacket();

$macAddress = '50:46:5C:53:94:25';
$broadcastIP = '192.168.1.255';

$result = $magicPacket->send($macAddress, $broadcastIP);

if ($result){
  echo "Worked\n";
} else {
  echo "Failed\n";
}
▶ php ./Examples/Basic.php
Worked

如果您不知道广播IP是什么,也不知道如何计算它,您可以只指定IP和子网掩码,所有这些都会为您自动计算。

<?php
// ./Examples/UnknownBroadcast.php
require __DIR__.'/../Phpwol/Init.php';

$f = new \Phpwol\Factory();
$magicPacket = $f->magicPacket();

$macAddress = '50:46:5C:53:94:25';
$ip = '192.168.1.10';
$subnet = '255.255.255.0';

$result = $magicPacket->send($macAddress, $ip, $subnet);

if ($result){
  echo "Worked\n";
} else {
  echo "Failed\n";
}
▶ php ./Examples/UnknownBroadcast.php
Worked

要求

  • 某种描述的Linux
  • PHP 5.3或更高版本

测试

您可以通过运行以下命令来运行测试

▶ phpunit

该仓库已连接到Travis CI。您可以在Phpwol Travis CI页面上查看master分支的状态和构建历史。完整的测试套件在PHP 5.3和PHP 5.4下运行。