tissue/app/Utilities/Formatter.php

39 lines
972 B
PHP

<?php
namespace App\Utilities;
use Misd\Linkify\Linkify;
class Formatter
{
/** @var Linkify */
private $linkify;
public function __construct()
{
$this->linkify = new Linkify();
}
/**
* 通算秒数を日数と時分にフォーマットします。
* @param int|float $value 通算秒数
* @return string "xx日 xx時間 xx分" 形式でフォーマットされた文字列
*/
public function formatInterval($value)
{
$days = floor($value / 86400);
$hours = floor($value % 86400 / 3600);
$minutes = floor($value % 3600 / 60);
return "{$days}{$hours}時間 {$minutes}";
}
/**
* テキスト内のURLをHTMLのリンクに置き換えます。
* @param string $text テキスト
* @return string URLをリンクに置き換えた文字列
*/
public function linkify($text)
{
return $this->linkify->processUrls($text);
}
}