- FEATURES
- Autoload
- Class Reflection
- Magic Methods
- Exceptions
- Late Static Binding
- Type Hinting
- SPL
- PHPUNIT
-
PHAR
- COMPOSER
- Carbon
- Guzzle
- Faker
- Math
- Requests
- DESIGN PATTERNS
- Singleton Pattern
- Observer Pattern
- Strategy Pattern
- Dependency Injection
- Middleware
- Registry
- SYMFONY
- Routes
- Annotations
- Flex
- Controllers
- Doctrine
- Templating
- VERSIONS
- Php7.4
- Php8.0
- SECURITY
- Filter Input
- Remote Code Injection
- Sql Injection
- Session Fixation
- File Uploads
- Cross Site Scripting
- Spoofed Forms
- CSRF
- Session Hijacking
- MODERN PHP
- Composer
- Autoloader
- Package
- Releases
- Generators
- Dependency Injection
- Middleware
- CUSTOM FRAMEWORK
- App
- Http Foundation
- Front Controller
- Routing
- Render Controller
- Resolver
- SoC
- FRAMEWORKS
- Slim
- Symfony V5
- Laravel V8
- Laminas V3
- Codeigniter V4
Php Archive
php.ini
Apache/conf/httpd.conf
AddType application/x-httpd-php .phar
Apache/bin/php.ini
extension=php_phar.dll
phar.readonly = Off
Create archive / directory structure
phar
algorithms
isEven.php
isPrime.php
algoritms.phar
compress.php
index.php
test.php
index.php
include 'phar://argorithms.phar/isEven.php';
include 'phar://argorithms.phar/isPrime.php';
compress.php
$phar = new Phar(__DIR__ . '/argorithms.phar',
FilesystemIterator::CURRENT_AS_FILEINFO |
FilesystemIterator::KEY_AS_FILENAME,
'argorithms.phar');
$phar->startBuffering();
$phar->setStub('
Phar::mapPhar();
include "phar://argorithms.phar/index.php";
__HALT_COMPILER(); ?>');
$phar['index.php'] = file_get_contents(__DIR__ . '/index.php');
$phar->buildFromDirectory(__DIR__ . '/argorithms');
$phar->stopBuffering();
run
D:/wamp/bin/php/php5.3.13>php.exe -dphar.readonly=0
../../../www/tests/phar/compress.php
test.php
include('argorithms.phar');
// $phar = new Phar('argorithms.phar', 0);
// foreach (new RecursiveIteratorIterator($phar) as $file)
// { echo $file->getFileName() . "<br>"; }
echo isEven(4) . "<br>"; // 1
echo isPrime(7) . "<br>"; //1
Last update: 531 days ago