Skip to content

Instantly share code, notes, and snippets.

View streamBase64EncodeFilter.php
<?php
class Base64Encode extends \php_user_filter
{
private $bufferHandle;
private $tail = '';
public function filter($in, $out, &$consumed, $closing)
{
View Writer.php
<?php
class Writer
{
public function saveFile()
{
file_put_contents('/var/www/file.pdf', '123');
}
}
@m8rge
m8rge / date_diff.php
Created Jun 27, 2017
Как правильно посмотреть, что одна дата больше другой на N дней
View date_diff.php
<?php
$date1 = new \DateTime('2017-01-01');
$date2 = new \DateTime('2017-01-10');
$dateInterval = $date1->diff($date2); // this is not date1-date2, but date2-date1 :-(
var_dump($dateInterval->format('%r%a') > 3); // :-(
@m8rge
m8rge / telegram icon.txt
Last active Oct 9, 2017
Telegram vector svg font icon. MIT Licensed
View telegram icon.txt
To convert this svg to web font – just upload `telegram-single-path*.svg` to http://fontello.com service!
Use `telegram-source-240px.svg` as source file.
@m8rge
m8rge / ExcelCsvWriter.php
Last active Dec 15, 2018
Blazing fast php excel writer. With Yii2 formatter dependency
View ExcelCsvWriter.php
<?php
/**
* require Yii2 for decimal formatter
*/
class ExcelCsvWriter
{
/**
* @var resource
*/
@m8rge
m8rge / SerializeAttributeBehavior.php
Last active Jun 7, 2018
SerializeAttributeBehavior
View SerializeAttributeBehavior.php
<?php
use yii\base\Behavior;
use yii\db\ActiveRecord;
class SerializeAttributeBehavior extends Behavior
{
/**
* @var string[]
*/
@m8rge
m8rge / post-or-pre.md
Last active Feb 4, 2016
Что потребляет больше памяти в php: преинкремент или постинкремент?
View post-or-pre.md

Что потребляет больше памяти в php: преинкремент или постинкремент?

Существует мнение, что преинкремент потребляет меньше памяти, т.к. он инкрементирует саму переменную, а постинкремент помимо этого, копирует ее предыдущее значение во временную переменную.

Давайте рассмотрим следующий код:

1. <?php
2. $a = 1;
3. echo $a++;
4. $b = 1;
@m8rge
m8rge / ConsoleProgress.php
Last active Nov 3, 2016
Simple yii2 console progress helper
View ConsoleProgress.php
<?php
use yii\base\Object;
use yii\helpers\Console;
/**
* Usage:
* $consoleProgress = new ConsoleProgress(['max' => 365]);
* $consoleProgress->start();
* foreach($days in $day) {
@m8rge
m8rge / TruncateString.php
Last active Nov 3, 2016
Truncate string on word break
View TruncateString.php
<?php
/**
* @param string $string Subject
* @param int $length Max string length
* @param bool $exactLength Truncate string with exact $length
* @param string $append Ellipsis string
* @return string
*/
class TruncateString
@m8rge
m8rge / InMemoryCache.php
Last active Feb 3, 2016
Simple limited memory cache
View InMemoryCache.php
<?php
class InMemoryCache
{
public $size = 10;
protected $cache = [];
/**
* @param string $key
You can’t perform that action at this time.