Skip to content

Instantly share code, notes, and snippets.

View chrisyue's full-sized avatar
:octocat:
=。=

chris yue chrisyue

:octocat:
=。=
View GitHub Profile
@chrisyue
chrisyue / phpcs.xml
Created September 26, 2017 10:33
php code sniffer snippet
<?xml version="1.0"?>
<ruleset name="Symfony2 Project">
<description>Coding sniffer rules for Symfony2</description>
<rule ref="Symfony2">
<exclude name="Symfony2.Commenting.ClassComment"/>
<exclude name="Symfony2.Commenting.FunctionComment"/>
<exclude name="PEAR.Functions.FunctionCallSignature.Indent"/>
</rule>
</ruleset>
@chrisyue
chrisyue / recursive-iterator-file.php
Last active September 19, 2016 07:52
通过正则递归搜索指定目录里的文件
<?php
foreach (new RegexIterator(new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.', FilesystemIterator::SKIP_DOTS)), '/\.m3u8$/') as $file) {
$name = $file->getBasename(sprintf('.%s', $file->getExtension()));
$content = file_get_contents($file->getRealPath());
$newContent = str_replace($name, urlencode($name), $content);
file_put_contents($file->getRealPath(), $newContent);
}
@chrisyue
chrisyue / .php_cs.php
Last active August 29, 2015 14:05
php-cs-fixer config for Symfony2 project
<?php
$finder = Symfony\CS\Finder\DefaultFinder::create()
->in('src')
->in('app/config')
->in('app/Resources')
;
return Symfony\CS\Config\Config::create()
->setUsingCache(true)
grant CREATE,INSERT,DELETE,UPDATE,SELECT on pauldb.* to paul@localhost identified by 'password' with grant option
$str = "0123ABCDFWS\",.?<>{}[]*&^%#@!~()+-|:;";
echo "$str";
echo "<br />";
$str = preg_replace('/\xa3([\xa1-\xfe])/e', 'chr(ord(\1)-0x80)', $str);
echo $str;
// rename local branch
git branch -m <old> <new>
git branch -m <new>
@chrisyue
chrisyue / phpmd.xml
Created March 8, 2014 09:47
phpmd ruleset overview
<?xml version="1.0"?>
<ruleset name="xxx"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
<description>xxx</description>
<!-- @see http://phpmd.org/rules/codesize.html#cyclomaticcomplexity -->
<rule ref="rulesets/codesize.xml/CyclomaticComplexity"/>
@chrisyue
chrisyue / pre-commit
Last active November 17, 2017 09:15
pre-commit for php,使用 php -l / phpmd / php-cs-fixer做检查,需要在项目根目录添加phpmd.xml,.php_cs文件
#!/usr/bin/env php
<?php
// 使用 php -l / phpmd / php-cs-fixer做检查,需要在项目根目录添加phpmd.xml(如果使用phpmd),.php_cs(如果使用phpcs并且有自定义的配置)文件
// 使用前执行 chmod +x path/to/pre-commit
exec('git diff HEAD --name-only --diff-filter=AMRC', $filenames);
$filenames = array_filter($filenames, function($filename) {
return pathinfo($filename, PATHINFO_EXTENSION) === 'php';
@chrisyue
chrisyue / composer.json
Last active August 29, 2015 13:57
global composer.json php常用工具
{
"require": {
"composer/composer": "dev-master",
"phpmd/phpmd": "dev-master",
"fabpot/php-cs-fixer": "dev-master",
"phpunit/phpunit": "3.7.*",
"sebastian/phpcpd": "*",
"phpdocumentor/phpdocumentor": "2.*",
"sami/sami": "1.*",
"squizlabs/php_codesniffer": "dev-master"
@chrisyue
chrisyue / pretty_json.sh
Created February 12, 2014 01:57
在shell下打出好看的json数据
curl http://sample.com/data.json | python -mjson.tool