{"id":13462624,"url":"https://github.com/TIGERB/easy-tips","last_synced_at":"2025-03-25T02:30:43.995Z","repository":{"id":45918352,"uuid":"66611984","full_name":"TIGERB/easy-tips","owner":"TIGERB","description":"A little Tips in my Code Career with Go\u0026PHP 🥳🥳🥳","archived":false,"fork":false,"pushed_at":"2024-01-12T06:38:24.000Z","size":39630,"stargazers_count":2725,"open_issues_count":12,"forks_count":701,"subscribers_count":163,"default_branch":"master","last_synced_at":"2024-10-29T11:11:54.834Z","etag":null,"topics":["go","go-patterns","golang","linux-commands","mysql","pattern","php","php-patterns","redis","sql"],"latest_commit_sha":null,"homepage":"http://easy-tips.tigerb.cn","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TIGERB.png","metadata":{"files":{"readme":"README-EN.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-08-26T03:02:53.000Z","updated_at":"2024-10-18T07:45:59.000Z","dependencies_parsed_at":"2023-02-19T04:45:51.744Z","dependency_job_id":"614b7e0c-b4fa-4e2f-8ad3-e85dc2c1191b","html_url":"https://github.com/TIGERB/easy-tips","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGERB%2Feasy-tips","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGERB%2Feasy-tips/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGERB%2Feasy-tips/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TIGERB%2Feasy-tips/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TIGERB","download_url":"https://codeload.github.com/TIGERB/easy-tips/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245385270,"owners_count":20606641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go","go-patterns","golang","linux-commands","mysql","pattern","php","php-patterns","redis","sql"],"created_at":"2024-07-31T12:00:54.006Z","updated_at":"2025-03-25T02:30:43.949Z","avatar_url":"https://github.com/TIGERB.png","language":"PHP","readme":"\u003ch1 align=\"center\"\u003eEasy Tips\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips#目录\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/php-done-brightgreen.svg\" alt=\"php\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/mysql\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/mysql-doing-blue.svg\" alt=\"mysql\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/redis\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/redis-doing-blue.svg\" alt=\"redis\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/patterns\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/patterns-done-brightgreen.svg\" alt=\"patterns\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/algorithm\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/algorithm-%CE%B1-yellowgreen.svg\" alt=\"algorithm\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/data-structure\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/data--structure-doing-blue.svg\" alt=\"data-structure\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/network\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/network-doing-blue.svg\" alt=\"network\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/TIGERB/easy-tips/tree/master/docker\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/docker-doing-blue.svg\" alt=\"docker\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n\u003e A knowledge storage for the PHP developer\n\n## Remark\n\nflag      | meaning\n--------- | -------\nnot-start | not start\ndoing     | ing\nα         | for reference only\ndone      | complete\nfixing    | fix\n\n## 目录\n\n- PHP(doing)\n\n  - PHP code standard with PSR(Include personal suggestion)\n\n    - [example](https://github.com/TIGERB/easy-tips/blob/master/php/standard.php)\n    - [doc](https://github.com/TIGERB/easy-tips/blob/master/php/standard.md)\n    - [experience](https://github.com/TIGERB/easy-tips/blob/master/php/artisan.md)\n\n  - Base knowledge[RTFM]\n\n    - [datastruct](http://php.net/manual/zh/language.types.php)\n    - [operator level](http://php.net/manual/zh/language.operators.precedence.php)\n    - [string functions](http://php.net/ref.strings.php)\n    - [array functions](http://php.net/manual/zh/ref.array.php)\n    - [math functions](http://php.net/manual/zh/ref.math.php)\n    - [object oriented](http://php.net/manual/zh/language.oop5.php)\n    - Feature\n\n      - [7.1](http://php.net/manual/zh/migration71.new-features.php)\n      - [7.0](http://php.net/manual/zh/migration70.new-features.php)\n      - [5.6](http://php.net/manual/zh/migration56.new-features.php)\n      - [5.5](http://php.net/manual/zh/migration55.new-features.php)\n      - [5.4](http://php.net/manual/zh/migration54.new-features.php)\n      - [5.3](http://php.net/manual/zh/migration53.new-features.php)\n\n  - [Some pit in my code career](https://github.com/TIGERB/easy-tips/blob/master/pit.md#记一些坑)\n\n- Mysql(doing)\n\n  - [Some base sql](https://github.com/TIGERB/easy-tips/blob/master/mysql/sql.md)\n  - [Engine](https://github.com/TIGERB/easy-tips/blob/master/mysql/base.md#引擎)\n    - InnoDB\n    - MyISAM\n    - Memory\n    - Archive\n    - Blackhole\\CSV\\Federated\\merge\\NDB\n  - [Transaction](https://github.com/TIGERB/easy-tips/blob/master/mysql/base.md#事务)\n    + Atomicity\n    + Consistency\n    + [Isolation](https://github.com/TIGERB/easy-tips/blob/master/mysql/base.md#mysql数据库为我们提供的四种隔离级别)\n      * READ UNCOMMITTED\n      * READ COMMITTED\n      * REPEATABLE READ\n      * SERIALIZEABLE\n    + Durability\n  - [Index](https://github.com/TIGERB/easy-tips/blob/master/mysql/base.md#索引)\n    + Index\n      * Primary unique index\n      * Unique index\n      * Index\n      * Union index\n        - Left match principle\n    + Cluster\n      * \bCluster index\n      * Non-\bCluster index\n    + Datastruct\n      * hash index\n      * b-tree index\n      * b+tree index\n    \n  - [Lock](https://github.com/TIGERB/easy-tips/blob/master/mysql/base.md#锁)\n    - Pessimistic lock\n    - Optimistic lock\n  - Submeter\n    - Vertical\n    - Horizontal\n  - Sql optimize\n  - Master-Slave\n\n- Redis(doing)\n\n  - Command\n  - Diff with memcache \n  - Some Example\n    - [\bcache](https://github.com/TIGERB/easy-tips/blob/master/redis/cache.php)\n    - [queue](https://github.com/TIGERB/easy-tips/blob/master/redis/queue.php)\n    - [pessimistic lock](https://github.com/TIGERB/easy-tips/blob/master/redis/pessmistic-lock.php)\n    - [optimistic lock](https://github.com/TIGERB/easy-tips/blob/master/redis/optimistic-lock.php)\n    - [subscribe\u0026publish](https://github.com/TIGERB/easy-tips/blob/master/redis/subscribe-publish)\n\n- Docker\n  - [The master and slave for redis](https://github.com/TIGERB/easy-tips/blob/master/docker/redis-master-slave/README.md)\n  - [The master and slave for mysql](https://github.com/TIGERB/easy-tips/blob/master/docker/mysql-master-slave/README.md)\n  - [codis](https://github.com/TIGERB/easy-tips/blob/master/docker/codis/README.md)\n\n- Design Pattern(done/fixing)\n\n  - [Concept](https://github.com/TIGERB/easy-tips/blob/master/patterns/thought.md#设计模式)\n\n  - Creational Pattern\n\n    - [singleton pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/singleton/test.php)\n    - [factory pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/factory/test.php)\n    - [abstract factory pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/factoryAbstract/test.php)\n    - [prototype pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/prototype/test.php)\n    - [produce pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/produce/test.php)\n\n  - Construction Pattern\n\n    - [bridge pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/bridge/test.php)\n    - [flyweight pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/flyweight/test.php)\n    - [facade pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/facade/test.php)\n    - [adapter pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/adapter/test.php)\n    - [decorator pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/decorator/test.php)\n    - [composite pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/composite/test.php)\n    - [proxy pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/proxy/test.php)\n    - [filter pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/filter/test.php)\n\n  - Behavior Pattern\n\n    - [template pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/template/test.php)\n    - [strategy pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/strategy/test.php)\n    - [state pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/state/test.php)\n    - [observer pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/observer/test.php)\n    - [chain of responsibility pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/chainOfResponsibility/test.php)\n    - [visitor pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/visitor/test.php)\n    - [interpreter pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/interpreter/test.php)\n    - [memento pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/memento/test.php)\n    - [command pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/command/test.php)\n    - [iterator pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/iterator/test.php)\n    - [mediator pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/mediator/test.php)\n    - [null object pattern](https://github.com/TIGERB/easy-tips/blob/master/patterns/nullObject/test.php)\n\n- [Data-structure(doing)](https://github.com/TIGERB/easy-tips/blob/master/data-structure.md)\n\n  - array\n  - heap/stack\n  - tree\n  - queue\n  - list\n  - graph\n  - hash\n\n- Algorithm(doing)\n\n  - analyze\n\n    - time complexity/space complexity/corectness/readability/robustness\n\n  - examples\n\n    - sort algorithm(α)\n\n      - [bubble sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/bubble.php)\n      - [quick sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/quick.php)\n      - [select sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/select.php)\n      - [insert sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/insert.php)\n      - [merge sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/merge.php)\n      - [shell sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/shell.php)\n      - [radix sort](https://github.com/TIGERB/easy-tips/blob/master/algorithm/sort/radix.php)\n\n- Netwok basis (doing)\n\n  - [Internet protocol](https://github.com/TIGERB/easy-tips/blob/master/network/internet-protocol.md#互联网协议)\n  - [client with nginx](https://github.com/TIGERB/easy-tips/blob/master/network/nginx.md#client和nginx简易交互过程)\n  - [nginx with php-fpm](https://github.com/TIGERB/easy-tips/blob/master/network/nginx.md#nginx和php简易交互过程)\n  - [http](https://github.com/TIGERB/easy-tips/blob/master/network/http.md)\n    - message\n      - message head\n      - message body\n    - http status\n    - http method\n    - https\n    - http2\n    - websocket\n\n- Computer basis (doing)\n\n  - [linux command](https://github.com/TIGERB/easy-tips/blob/master/linux/command.md)\n  - shell\n\n- High concurrency (not-start)\n\n## Test\n\n### Design Pattern\n\nrun: php patterns/[folder-name]/test.php\n\n```\nfor example,\n\nchain of responsibility: run, php patterns/chainOfResponsibility/test.php\n\nresult：\n\nrequest 5850c8354b298: token pass～\nrequest 5850c8354b298: request frequent pass～\nrequest 5850c8354b298: params pass～\nrequest 5850c8354b298: sign pass～\nrequest 5850c8354b298: auth pass～\n```\n\n### Algorithm\n\nrun: php algorithm/test.php [algorithm name｜help]\n\n```\nfor example,\n\nbubble sort: run, php algorithm/test.php　bubble\n\nresult：\n\n==========================bubble sort=========================\nArray\n(\n    [0] =\u003e 11\n    [1] =\u003e 67\n    [2] =\u003e 3\n    [3] =\u003e 121\n    [4] =\u003e 71\n    [5] =\u003e 6\n    [6] =\u003e 100\n    [7] =\u003e 45\n    [8] =\u003e 2\n)\n=========up is the origin data==================below is the sort result=============\nArray\n(\n    [0] =\u003e 2\n    [1] =\u003e 3\n    [2] =\u003e 6\n    [3] =\u003e 11\n    [4] =\u003e 45\n    [5] =\u003e 67\n    [6] =\u003e 71\n    [7] =\u003e 100\n    [8] =\u003e 121\n)\n```\n\n### Redis \n\nrun: php redis/test.php [name｜help]\n\n```\nfor example,\n\npessimistic-lock: run, php redis/test.php p-lock\n\nresult：\n\nexexute count increment 1～\n\ncount value: 1\n\n```\n\n## Error correction\n\nIf you find some where is not right, you can make a issue[issue](https://github.com/TIGERB/easy-tips/issues)or a [pull request](https://github.com/TIGERB/easy-tips),I will fix it，THX～\n\n## Contributors\n\nThis project exists thanks to all the people who contribute. \n\u003ca href=\"graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/contributors.svg?width=890\u0026button=false\" /\u003e\u003c/a\u003e\n\n\n## Backers\n\nThank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/easy-tips#backer)]\n\n\u003ca href=\"https://opencollective.com/easy-tips#backers\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/backers.svg?width=890\"\u003e\u003c/a\u003e\n\n\n## Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/easy-tips#sponsor)]\n\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/0/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/1/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/1/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/2/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/2/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/3/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/3/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/4/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/4/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/5/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/5/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/6/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/6/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/7/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/7/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/8/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/8/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/easy-tips/sponsor/9/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/easy-tips/sponsor/9/avatar.svg\"\u003e\u003c/a\u003e\n","funding_links":["https://opencollective.com/easy-tips"],"categories":["Uncategorized","Repositories","PHP"],"sub_categories":["Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTIGERB%2Feasy-tips","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTIGERB%2Feasy-tips","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTIGERB%2Feasy-tips/lists"}