※ 主にステートレスなサーバーサイドリクエストを中心として
- date, time(), new \DateTime, new \DateTimeImmutable...
- $_SERVER['REQUEST_TIME']
<?php | |
use PHPStan\PhpDocParser\Ast\PhpDoc\PhpDocNode; | |
use PHPStan\PhpDocParser\Ast\PhpDoc\PhpDocTagNode; | |
use PHPStan\PhpDocParser\Ast\PhpDoc\ParamTagValueNode; | |
use PHPStan\PhpDocParser\Ast\Type; | |
use PHPStan\PhpDocParser\Printer\Printer; | |
require __DIR__ . '/vendor/autoload.php'; |
"PHP Advent Calendar" 。懐かしい響きです。
技術系カレンダーにおける Advent Calendar については、 その祖はPerlコミュニティのそれであるとは思いますが、かつて PHP コミュニティの著者たちによるコラムとして、advent Calendarがありました。 web advent Calendarへの改名や、休止を経て今では、24 Days in December へと変遷しています。
かつて私は、advent calendarの熱心な読者でした。
<?php | |
// test for BEAR\Package\Compiler::getRelativePath | |
namespace ver192 { | |
function getRelativePath(string $rootDir, string $file) | |
{ | |
// $dir = realpath($rootDir); | |
$dir = $rootDir; | |
if (strpos($file, $dir) !== false) { |
<?php | |
// php filter.php < data.bin > bit_filtered_data.bin | |
class bitope_filter extends php_user_filter | |
{ | |
const KEY = '3.14'; | |
function filter($in, $out, &$consumed, $closing) { | |
<?php | |
public function testEmitsBufferLevel() | |
{ | |
ob_start(); | |
echo "level". ob_get_level() . " "; // 2 | |
ob_start(); | |
echo "level". ob_get_level() . " "; // 3 | |
ob_start(); | |
echo "level". ob_get_level() . " "; // 4 |
<?php | |
$tmp = tmpfile(); | |
$fp = fopen('stream.php', 'r'); | |
//$fp = fopen('streamCRLF.php', 'r'); | |
//$fp = fopen('streamCR.php', 'r'); | |
function fpulls($fp, &$i) { | |
$line = ''; |
<?php | |
/** | |
* 西暦から元号に変換(元号新規追加されてもデータセットをコンテナ注入すればいい版) | |
* | |
* @see http://tohokuaiki.hateblo.jp/entry/20110314/1300090600 | |
* @see https://github.com/mattn/go-era_jp | |
*/ | |
declare(strict_types=1); | |
class YearValue |