Skip to content

Instantly share code, notes, and snippets.

View pedrochaves's full-sized avatar

Pedro Chaves pedrochaves

View GitHub Profile
@pedrochaves
pedrochaves / gist:1709844
Created January 31, 2012 10:43
Small JavaScript function to create python-like string formatting (without the type of the variable)
var str_tpl = function (str, map) {
var prop;
str = str + '';
for (prop in map) {
if (map.hasOwnProperty(prop)) {
str = str.replace('%(' + prop + ')', map[prop]);
}
}
@pedrochaves
pedrochaves / jQuery.stringify.js
Created March 1, 2012 16:54 — forked from chicagoworks/jQuery.stringify.js
jQuery.stringify() utility
/**
* converted stringify() to jQuery plugin.
* serializes a simple object to a JSON formatted string.
* Note: stringify() is different from jQuery.serialize() which URLEncodes form elements
* UPDATES:
* Added a fix to skip over Object.prototype members added by the prototype.js library
* USAGE:
* jQuery.ajax({
* data : {serialized_object : jQuery.stringify (JSON_Object)},
@pedrochaves
pedrochaves / gist:9690776
Last active August 29, 2015 13:57
Esboço simples de scroll infinito
(function($) {
var // Distância entre o fundo da tela e a altura. Quanto maior o valor, mais rapido ele vai buscar
threshold = 200,
is_searching = false,
doc_height,
$d;
updateReferences();
// Só dispara o evento quando o usuário para o scroll. Depois de 150ms
@pedrochaves
pedrochaves / comunicado.md
Last active August 29, 2015 14:14
Comunicado PHPMG - Encontro do dia 22/01

Olá pessoal,

venho em nome da organização para dar um comunicado:

Como sabem ontem, quinta, 22 de janeiro foi o segundo encontro do PHPMG desde a volta. Um encontro informal em um bar. Em novembro, o evento que marcou a volta foi um sucesso. Com as vagas esgotadas, conversei com quase todos no evento e absolutamente todo mundo estava empolgado para a nova fase, dando dicas e ideias, o que fez com que nós da organização ficássemos empolgados pensando que dessa vez o PHPMG seja maior do que já foi, e que não seria tão difícil assim.

Mas tivemos um baque durante o evento: absolutamente NINGUÉM apareceu no evento. 19 pessoas confirmadas e nenhuma alma apareceu no bar além de nós da organização.

Uma comunidade só pode existir se tiver pessoas que compartilham de um mesmo interesse e que estejam buscando as mesmas coisas. Nós acreditamos que uma comunidade é uma excelente forma de trocar ideias sobre nosso trabalho e acredito que isso faz com que todos os envolvidos acabem evoluindo, aprendendo, compartilhando

@pedrochaves
pedrochaves / gist:5150d40613411072f556
Created April 20, 2015 17:12
Guzzle Mock Example
<?php
namespace Test;
use GuzzleHttp\Client;
use GuzzleHttp\ClientInterface;
use GuzzleHttp\Subscriber\Mock;
use GuzzleHttp\Message\Response;
class Request {
@pedrochaves
pedrochaves / example.php
Last active August 29, 2015 14:20
Generators + splat operator example
<?php
function generateNumbers($limit)
{
foreach (range(1, $limit) as $n) {
echo $n, ':';
yield $n;
}
}
@pedrochaves
pedrochaves / person.php
Created July 12, 2015 15:30
Exemplo de traits
<?php
class Person
{
protected $name;
public function setName($name)
{
$this->name = ucwords($name);
}
<?php
interface Loggable
{
public function log($message, $level);
public function setLogger(LoggerInterface $logger);
}
trait Logger
@pedrochaves
pedrochaves / php4.php
Last active August 29, 2015 14:24
OO: PHP4 vs. PHP5
<?php
class Person
{
var $name = '';
public function Person($name)
{
$this->name = ucfirst($name);
}
@pedrochaves
pedrochaves / antes.php
Created July 15, 2015 01:31
autoloading
<?php
// config.php
include_once 'a.class.php';
include_once 'b.class.php';
include_once 'c.class.php';
include_once 'd.class.php';
// index.php
include 'config.php';