https://speakerdeck.com/benjam1/adoptez-le-tdd-sur-vos-projets-symfony2-existants
http://davidbu.ch/slides/20130404-sflive_phpcr.html
https://dl.dropboxusercontent.com/u/581816/sflive_Paris_2013_DIC_-_Thomas_Rabaix.pdf
| <?php | |
| /* | |
| OCP - Opcache Control Panel (aka Zend Optimizer+ Control Panel for PHP) | |
| Author: _ck_ (with contributions by GK, stasilok) | |
| Version: 0.1.7 | |
| Free for any kind of use or modification, I am not responsible for anything, please share your improvements | |
| * revision history | |
| 0.1.7 2015-09-01 regex fix for PHP7 phpinfo | |
| 0.1.6 2013-04-12 moved meta to footer so graphs can be higher and reduce clutter |
| \Doctrine\DBAL\Types\Type::addType('uuid', 'BuboBox\Doctrine2\DBAL\Types\UuidType'); |
| /composer.lock | |
| /vendor/ |
| web: ./node_modules/.bin/coffee app.coffee |
| <?php | |
| use Symfony\Component\Console\Input\ArgvInput; | |
| use Symfony\Component\Console\Input\InputDefinition; | |
| use Symfony\Component\Console\Input\InputArgument; | |
| use Symfony\Component\Console\Input\InputOption; | |
| $input = new ArgvInput($argv, new InputDefinition([ | |
| new InputArgument('sql', InputArgument::REQUIRED), | |
| new InputOption('update', 'u', InputOption::VALUE_NONE), |
| // Stick all your icons in a subfolder in your images folder. Put retina versions in a subfolder of that called "@2x". | |
| $sprites: sprite-map("NAME_OF_SUBFOLDER/*.png"); | |
| $sprites2x: sprite-map("NAME_OF_SUBFOLDER/@2x/*.png"); | |
| // stolen from 37signals | |
| @mixin retina-media() { | |
| @media (min--moz-device-pixel-ratio: 1.3), | |
| (-webkit-min-device-pixel-ratio: 1.3), | |
| (min-device-pixel-ratio: 1.3), | |
| (min-resolution: 1.3dppx) { |
| <?php | |
| protected function execute(InputInterface $input, OutputInterface $output) | |
| { | |
| $progress = $this->getHelperSet()->get('progress'); | |
| $ctx = stream_context_create(array(), array('notification' => function ($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max) use ($output, $progress) { | |
| switch ($notification_code) { | |
| case STREAM_NOTIFY_FILE_SIZE_IS: | |
| $progress->start($output, $bytes_max); | |
| break; |
| DELETE | |
| DELETE _template/{name} | |
| DELETE {index} | |
| DELETE {index}/_alias/{name} | |
| DELETE {index}/_query | |
| DELETE {index}/_warmer | |
| DELETE {index}/_warmer/{name} | |
| DELETE {index}/{type} | |
| DELETE {index}/{type}/_mapping | |
| DELETE {index}/{type}/_query |
| <?php | |
| function runMigration() { | |
| foreach (getUsers() as $user) { | |
| $hash = $user->hash; | |
| list ($oldhash, $oldsalt) = explode(':', $hash, 2); | |
| $newHash = password_migrate_create($oldhash, $oldsalt, PASSWORD_BCRYPT); | |
| $user->hash = $newHash; | |
| saveUser($user); | |
| } |