Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mahmoudmohamedramadan/awesome-php
The Awesome PHP.
https://github.com/mahmoudmohamedramadan/awesome-php
List: awesome-php
amphp assertion aura-router blade-template carbon composer csstoinlinestyles didom fractal money notification parsedown php reflection
Last synced: 2 months ago
JSON representation
The Awesome PHP.
- Host: GitHub
- URL: https://github.com/mahmoudmohamedramadan/awesome-php
- Owner: mahmoudmohamedramadan
- Created: 2021-06-05T10:40:00.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-29T22:20:46.000Z (6 months ago)
- Last Synced: 2024-06-30T04:37:37.462Z (6 months ago)
- Topics: amphp, assertion, aura-router, blade-template, carbon, composer, csstoinlinestyles, didom, fractal, money, notification, parsedown, php, reflection
- Language: PHP
- Homepage:
- Size: 109 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Awesome PHP
## 📌 Covered Topics
- [Aura Router](https://github.com/auraphp/Aura.Router)
- [DiDOM Web Scraping](https://github.com/Imangazaliev/DiDOM)
- [CssToInlineStyles](https://github.com/tijsverkoyen/CssToInlineStyles)
- [Amp PHP MySQL](https://github.com/amphp/mysql)
- [Reflection PHP](https://www.php.net/manual/en/book.reflection.php)
- [KNP-Menu](https://github.com/KnpLabs/KnpMenu)
- [PHP-CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
- [Carbon](https://github.com/briannesbitt/Carbon)
- [Money](https://github.com/brick/money)
- [Markup](https://github.com/erusev/parsedown)
- [Agent](https://github.com/jenssegers/agent)
- [Blade](https://github.com/jenssegers/blade)
- [Assertion](https://github.com/beberlei/assert)
- [Fractal](https://github.com/thephpleague/fractal)
- [Notification](https://github.com/jolicode/JoliNotif)> [!NOTE]
> You can add an awesome package, but please, go on the same approach I follow.## 🚀 Getting Started
Installation of the next packages requires [Composer](https://getcomposer.org/).
### Aura Router
> This package helps you to create routes as you're in [Laravel](https://laravel.com/) Framework.
Install the `Aura` package:
```SHELL
composer require aura/router
```In addition, implement the `PSR-7`:
```SHELL
composer require zendframework/zend-diactoros
```Finally, copy & paste the code in the [Aura-Router/index.php](/app/Aura-Router/index.php) to get the `/users/{id}` route:
```SHELL
php -S localhost:8000 -t app/Aura-Router
```> [!TIP]
> `-t` argument refers to the `index.php` path.### DiDOM Web Scraping
> This package lets you extract information from a specific `page/link`.
Install the `DiDOM` package, then copy & paste the code in the [DiDOM-Web-Scraping/index.php](/app/DiDOM-Web-Scraping/index.php)
```SHELL
composer require imangazaliev/didom
```### CssToInlineStyles
> This package allows you to merge separate `HTML` and `CSS` files into one file (This is useful when you decide to send an email).
Install the `CssToInlineStyles` package, then copy & paste the code in [CssToInlineStyles/index.php](/app/CssToInlineStyles/index.php):
```SHELL
composer require tijsverkoyen/css-to-inline-styles
```### AmPHP MySQL
> We all know that PHP works synchronous execution so, if you send a query database then you should wait until the database server responds to you in a blocking manner, instead of sitting do nothing you can send the next query database or do an HTTP call to an API.
Install the `AmPHP MySQL` package, then copy & paste the code in the [AmPHP-MySQL/index.php](/app/AmPHP-MySQL/index.php):
```SHELL
composer require amphp/mysql
```### Reflection PHP
> Reflection API allows you to know more information about `Classes`, `Interfaces`, `Functions`, and `Extensions` (**There is no installation needed to use these functions, they are part of the PHP core**).
Copy & paste the code in the [Reflection/index.php](/app/Reflection/index.php)
### KNP-Menu
> This package allows you to create a list HTML tag without writing any HTML code.
Install the `KNP-Menu` package, then copy & paste the code in the [KNP-Menu/index.php](/app/KNP-Menu/index.php):
```SHELL
composer require knplabs/knp-menu
```### PHP-CodeSniffer
> This package allows you to detect violations of a defined coding standard in the `PHP`, `HTML`, and `CSS` files by two files which are `phpcs` and `phpcbf`.
Install the `PHP-CodeSniffer` package:
```SHELL
composer require squizlabs/php_codesniffer
```Run the next command to show the `ERRORS` and `WARNING` in your code ([phpcs.png](/app/assets/img/phpcs.png)):
```SHELL
./vendor/bin/phpcs folderPath/filePath.php
```Run the next command to automatically correct code standard violations ([phpcbf.png](/app/assets/img/phpcbf.png)):
```SHELL
./vendor/bin/phpcbf folderPath/filePath.php
```### Carbon
> This package allows you to deal with dates and times easily.
Install the `Carbon` package, then copy & paste the code in the [Carbon/index.php](/app/Carbon/index.php):
```SHELL
composer require nesbot/carbon
```### Money
> This package allows you to deal with monetary calculations carefully.
Install the `Mony` package, then copy & paste the code in the [Money/index.php](/app/Money/index.php):
```SHELL
composer require brick/money
```### Markup
> This package allows you to deal with HTML in a cinch manner.
Install the `Markup` package, then copy & paste the code in the [Markup/index.php](/app/Markup/index.php):
```SHELL
composer require rusev/parsedown
```### Agent
> This package gives you more information about the device and the browser that runs the application.
Install the `Agent` package, then copy & paste the code in the [Agent/index.php](/app/Agent/index.php):
```SHELL
composer require jenssegers/agent
```### Blade
> This package lets you deal with the `.blade.php` extension as if in [Laravel](https://laravel.com/) Framework.
Install the `Blade` package, then copy & paste the code in the [Blade/index.php](/app/Blade/index.php):
```SHELL
composer require jenssegers/blade
```### Assertion
> This package allows you to validate the form inputs easily.
Install the `Assertion` package, then copy & paste the code in the [Assertion/index.php](/app/Assertion/index.php):
```SHELL
composer require beberlei/assert
```### Fractal
> This package provides a presentation and transformation layer for complex data output.
Install the `Fractal` package, then copy & paste the code in the [Fractal/index.php](/app/Fractal/index.php):
```SHELL
composer require league/fractal
```### Notification
> This package allows displaying desktop notifications.
Install the `Notification` package, then copy & paste the code in the [Notification/index.php](/app/Notification/index.php):
```SHELL
composer require jolicode/jolinotif
```## 💳 Support me
- [PayPal](https://www.paypal.com/paypalme/mmramadan496)