- ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
- ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
- ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
- ΠΡΠ²ΠΎΠ΄ΠΈΡ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ ΠΈ ΠΊΠ»Π°ΡΡΠ°Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ.
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°Π½Π°Π»ΠΈΠ·Π° "Π’ΡΠΆΠ΅Π»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²"
- ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ Π·Π° ΡΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π»Ρ(Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠΈ).
- ΠΠΎΠΆΠ½ΠΎ ΡΠ΅Π»Π΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ»Π΅Π΄Ρ (ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π΅Π±Π°Π³Π°). ΠΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠ° ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ ΡΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π°. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² ΡΠ»ΡΡΠ°ΡΡ , Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π΄Π°ΠΌΠΏΠ° Π² ΡΠ΅Π»ΡΡ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
PHP 7 Git + Composer
ΠΡΠ°ΠΏΡ
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΡΠ΅ΡΠ΅Π· Composer Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎ.
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΠ΅ΡΠ΅Π· Composer Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ.
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ΅ΡΠ΅Π· GIT
ΠΡΡΡ ΡΠΊΡΠΈΠΏΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½ΠΎ Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ.
Π PHP ΡΠ°ΠΊΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΡΠ΅ΡΠ΅Π· Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ auto_prepend_file ΠΈ auto_append_file.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΡΠ°ΠΉΠ»Π΅ php.ini Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ auto_prepend_file= dirictory/name_file.php
ΠΠ»Ρ Apache ΠΌΠΎΠΆΠ½ΠΎ Π² ΡΠ°ΠΉΠ»Π΅ .htaccess ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ ΡΡΡΠΎΠΊΡ php_value auto_prepend_file dirictory/name_file.php
Π Π΄ΡΡΠ³ΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
, ΡΠΌΠΎΡΡΠΈΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΠ»Ρ ΡΠ°ΠΊΠΈΡ
ΡΠ΅Π»Π΅ΠΉ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» init_prepend_scripts.php
Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΡΠΈΠΊΠΎΠ² ΠΈ/ΠΈΠ»ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ².
Π§ΡΠΎΠ±Ρ Π½Π΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, Π² ΡΠ»ΡΡΠ°ΡΡ
ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ Π²Π½Π΅Π΄ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Π²Π½Π΅Π΄ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΠ°ΠΆΠ΅Ρ Π½Π° ΡΠ°ΠΉΠ» init_prepend_scripts.php
ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠ°ΠΉΠ»Π°Ρ
Π½Π°ΡΡΡΠΎΠ΅ΠΊ php ΡΠ΅ΡΠ²Π΅ΡΠ°. cΠΌ ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ
-
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ
PHP_AUTO_PREPEND_FILE=absolute_path/init_prepend_scripts.php
.
PHP_AUTO_PREPEND_FILE lΠΎΠ»ΠΆΠ½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠ»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ΅Π»Π΅ΠΉ PHP_AUTO_PREPEND_FILE Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ Π² ΠΠ‘. -
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² php.ini
auto_prepend_file=${PHP_AUTO_PREPEND_FILE}
ΠΡΠ»ΠΈ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ PHP_AUTO_PREPEND_FILE, ΡΠΎΠ³Π΄Π° ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠΏΠΈΡΠΈΡΠ΅auto_prepend_file=absolute_path/init_prepend_scripts.php
, Π³Π΄Π΅ absolute_path - ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π° init_prepend_scripts.php. ΠΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΡ auto_prepend_file ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². ΠΠ»Ρ Apache ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ» .htaccess, Π³Π΄Π΅ ΠΏΡΠΎΠΏΠΈΡΠ΅ΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΡphp_value auto_prepend_file absolute_path/init_prepend_scripts.php
. -
Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ»
absolute_path/init_prepend_scripts.php
<?php
//-- init Composer global.
if(false!==($path=getenv('COMPOSER_HOME'))){
$composer_home=$path;
} else if(false!==($path=getenv('APPDATA'))){ // Π΄Π»Ρ windows
$composer_home=$path.'/Composer';
} else {
// Π΄Π»Ρ *nix ΡΠΈΡΡΠ΅ΠΌ
if(false!==($path=getenv('XDG_CONFIG_HOME'))){
$composer_home=$path.'/composer';
} else if(false!==($path=getenv('HOME'))){
$composer_home=$path.'/.composer';
}
}
// ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎ. ΡΠ΅ΡΠ΅Π· composer global require
if(file_exists($composer_home.'/vendor/autoload.php')){
include $composer_home.'/vendor/autoload.php';
}
// -- end Init Composer Global
- ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²Π΅Ρ.
-
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π΅ΡΠ΅ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² packagist, ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
$ composer global config repositories.Alpa\PhpDump git https://github.com/ALexeyP0708/PhpDump.git
$ composer global config repositories.Alpa\EntityDetails git https://github.com/ALexeyP0708/EntityDetails.git
-
ΠΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°Π΅ΠΌ PhpDump
$ composer global require Alpa/PhpDump":"1.*
-
ΠΠ°Π»Π΅Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°
$ composer global install
Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·Π΅Ρ Π΅ΡΠ΅ Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎ ΠΠ»ΠΈ$ composer global update
ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΠ»ΠΈ$ composer global dump-autoload
ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΡΠΈΠΊ. -
ΠΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π² ΠΊΠΎΠ½Π΅Ρ ΡΠ°ΠΉΠ»Π°
init_prepend_scripts.php
ΠΊΠΎΠ΄:
// ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ Php Dump;
\Alpa\PhpDump\Manager::includeFileInit();
ΠΡΠΎ ΡΠΏΠΎΡΠΎΠ± ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΎΡ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ (ΠΏΡΠ½ΠΊΡΡ 1-4) ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π°, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π±Π΅Π· Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ
global
- Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ
PHP_DUMP_PATH=path/phpdump/extension
Π³Π΄Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΡΡ ΠΊ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° PhpDump. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ Π² .htaccessSetEnv PHP_DUMP_PATH absolute/path/PhpDump
, Π΅ΡΠ»ΠΈ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Apache Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡAllowOverride
Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅All
ΠΠΠΠΠΠΠΠ: ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΡΡΠ³ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΠ»ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΠΈ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ PhpDump. Π’ΠΎΠ³Π΄Π° Π²Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ PHP_DUMP_PATH Π½Π° ΠΈΠΌΡ Π²Π°ΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π² ΠΊΠΎΠ΄Π΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅. - ΠΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π² ΠΊΠΎΠ½Π΅Ρ ΡΠ°ΠΉΠ»Π°
init_prepend_scripts.php
ΠΊΠΎΠ΄
// -- Init Php Dump
if(false===($path=getenv('PHP_DUMP_PATH'))){
// ΡΠΌΡΠ»ΠΈΡΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ PHP_DUMP_PATH Π² ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ.
putenv('PHP_DUMP_PATH='.__DIR__.'/relative/patch/dirictories/PhpDump');// ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΡΠΉ ΠΏΡΡΡ
if(false!==($path=getenv('PHP_DUMP_PATH'))){
include $path.'/vendor/autoload.php';
\Alpa\PhpDump\Manager::includeFileInit();
}
// -- End Init Php Dump
ΠΠ»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅, ΠΏΡΠΈΠ½ΡΠΈΠΏ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ.
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΠ°ΠΏΠΊΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π΄Π»Ρ php ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ
auto_prepend_file= dirictory/init_prepend_scripts.php
ΠΈΠ»ΠΈ auto_prepend_file=${PHP_AUTO_PREPEND_FILE}
,
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ PHP_AUTO_PREPEND_FILE ΠΈ PHP_DUMP_PATH, ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» init_prepend_scripts.php
Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΠ²ΡΡΡΡΡ Π΄ΠΈΡΠΈΠΊΡΠΎΡΠΈΡ.
- ΠΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°
$ git clone https://github.com/ALexeyP0708/PhpDump.git
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. - ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
$ composer install
- ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΏΡΠ½ΠΊΡΡ 2,3 Π³Π»Π°Π²Ρ Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΠ΅ΡΠ΅Π· Composer Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ.
Π Google Chrome ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π² ΡΠ°Π·Π΄Π΅Π» Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (Π² Π²Π΅ΡΡ
Π½Π΅ΠΌ ΠΏΡΠ°Π²ΠΎΠΌ ΡΠ³Π»Ρ), Π΄Π°Π»Π΅Π΅ ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ [directory PhpDump]/ChromeExtension/PhpDumpConsole_v1.1
.
Π ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΊΡΠ°ΡΠ½ΡΠΉ Π·Π½Π°ΡΠΎΠΊ Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠΈΡΠ΅Π»Π° -ΡΠ΅ΡΡΠ΅ΡΠ΅Π½ΠΊΠ° Π² ΠΊΡΡΠ³Ρ. ΠΡΠ»ΠΈ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΡΠ΅ΡΡΠ΅ΡΠ΅Π½ΠΊΠ° Π½Π΅ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠΈΠ½ΠΈΠΉ ΡΠ²Π΅Ρ, ΡΠΎ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ PhpDump ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ Π½Π΅ ΠΏΡΠΎΡΠ΅Π» Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ.
ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ [dirictory Php Dump]/tests/test_debugManager.php
Π ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ Π³Π΄Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ PhpDump Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π²Π΅Π± Π΄ΠΎΡΡΡΠΏ ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ ΠΊ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌ.
ΠΠΎΠΏΡΡΡΠΈΠΌ Π²Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ PhpDump Π² /sites/www/mysite/TestPhpDump
Π° Π²Π΅Π± Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΡΡ http://mysite/
ΡΠΎΠ³Π΄Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΡ ΡΠ΅ΡΡΠ°
http://mysite/TestPhpDump/tests/test_debugManager.php
ΠΠ°ΠΏΡΡΡΠΈΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ. ΠΠ°ΠΏΡΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΠΎΠ»Ρ Google Chrome ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΡΠ΅ΡΡΠ΅ΡΠ΅Π½ΠΊΡ Π² ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡΡ, ΡΠ΅ΡΡΠ΅ΡΠ΅Π½ΠΊΠ° ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡΡ Π² ΡΠΈΠ½ΠΈΠΉ ΡΠ²Π΅Ρ. ΠΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
- Π‘Π»ΡΠΆΠ΅Π±Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.
- ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΠΎ Π΄Π°ΠΌΠΏΠ° Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
- ΠΡΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π°ΠΌΠΏΠ°, Π΄Π°Π½Π½ΡΠ΅ Π΄Π°ΠΌΠΏΠ° Π² ΠΏΠΎΡΠΎΠΊΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² json ΡΠ°ΠΉΠ» ΠΈ ΠΏΠΎΡΠ»Π΅, ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ, Π΄Π°Π½Π½ΡΠ΅ json ΡΠ°ΠΉΠ»Π° ΠΎΡΠ΄Π°ΡΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ.
- ΠΠ°ΠΌΠΏ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ.
- Π‘ΡΡΡΠΊΡΡΡΠ° ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ Π΄Π°ΠΌΠΏ Π΄Π°Π½Π½ΡΡ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ Π΄Π°ΠΌΠΏ Π±ΡΠ΄Π΅Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ²ΠΎΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
- ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°ΠΌΠΏ Ajax Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· PHP ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΠ°ΠΉΠ»ΠΎΠ² (js,css,img....).
- ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°ΠΌΠΏ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ».
- ΠΡΠ»ΠΈ Php Dump ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π»Π΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ»Π΅Π΄Ρ (ΠΌΠ΅ΡΠΎΠ΄Ρ php dump). ΠΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠ° ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ ΡΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π°. Π‘ΠΌ Π½ΠΈΠΆΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· turn_on. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² ΡΠ»ΡΡΠ°ΡΡ Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π΄Π°ΠΌΠΏΠ° Π² ΡΠ΅Π»ΡΡ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠ»Ρ ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½ Π²Π΅ΡΡΠΈΠΈ, Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ»Π°ΡΡ Π·Π°Π³Π»ΡΡΠΊΠ° Π΄Π»Ρ ΡΠ»Π΅Π΄ΠΎΠ², ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ Π·Π°ΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠ»Π΅Π΄ΠΎΠ².
ΠΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Ρ:
- ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° Π΄Π°ΠΌΠΏΠ° ΡΠ΅ΡΠ΅Π· web socket . Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠ΅Π³ΠΌΠ΅Π½ΡΡ Π΄Π°ΠΌΠΏΠ° Π±ΡΠ΄ΡΡ ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ Π²ΠΎΡΠ΅Π» Π² ΡΠΈΠΊΠ»ΠΈΡΠ½ΡΡ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΡ
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°. ΠΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠΊΡΠΈΠΏΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅ CLI ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΠ΅Π½ Π΄Π΅ΠΌΠΎΠ½.
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
- ΠΡΠΈ ΡΠΈΠΊΠ»ΠΈΡΠ½ΠΎΡΡΠΈ, ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
- ΠΠΌΠΏΠΎΡΡ ΡΠΊΡΠΏΠΎΡΡ Π΄Π°ΠΌΠΏΠ°.
ΠΠ»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» Π½Π°ΡΡΡΠΎΠ΅ΠΊ.
Π ΡΠ°ΠΉΠ»Π΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ PhpDump, ΠΈΠ»ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ Π·Π°ΠΏΠΈΡΡ Π΄Π°ΠΌΠΏΠ° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ,
Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ Π±Π΅ΠΊΡΡΠ΅ΠΉΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°ΠΌΠΏΠ°.
Π’Π°ΠΊΠΆΠ΅ Π² ΡΠ°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΡΠ²ΠΎΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ-ΠΎΠ±Π΅ΡΡΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ°.
Π’Π°ΠΊΠΆΠ΅ Π² ΡΠ°ΠΉΠ»Π΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ.
PhpDump Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ ΡΠ°ΡΡΡΠΈΡΠ°Π½ Π½Π° ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Ρ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΠ»ΠΈ PhpDump ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΡ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΡΠ°ΠΉΡΡ Π½Π° ΠΏΡΠΎΡΡΠΎΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, ΡΠΎ Π² ΡΠ°ΠΉΠ»Π΅ src/init_php_dump.php
ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ:
$settings=[
'hashkeys'=>[
'HashKey'=>[ // Π»ΡΠ±ΠΎΠΉ ΠΊΠ»ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ (Π»Π°ΡΠΈΠ½ΠΈΡΠ°).ΠΡΠ΄Π΅Ρ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΡΠΌ
'key'=>'HashKey', // Π΄ΡΠ±Π»ΠΈΡΡΠ΅ΠΌ ΡΡΡΠΎΠΊΡ ΠΊΠ»ΡΡΠ°
'greeting_server'=>'greeting_server', // ΠΊΠ»ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°
'greeting_client'=>'greeting_client' // ΠΊΠ»ΡΡ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
]
]
];
ΠΠ° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, Π² Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅ 'Java Scripts Context' Π²ΡΠ±ΡΠ°ΡΡ PhpDumpConsole ΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ΄
dm.setHashKey({
hashkey:'HashKey',
greeting_server:'greeting_server',
greeting_client:'greeting_client'
});
//Π³Π΄Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ hashkey , greeting_server, greeting_client ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅.
dm.bindHashKeyDomain({hashkey:'HashKey',domain:'global'}); // ΠΈΠ»ΠΈ domain:'your_domain'
//Π΅ΡΠ»ΠΈ domain='global' Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΡΠ°ΠΉΡΠΎΠ² ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΊΠ»ΡΡΡ.
$dump_settings=[
'turn_on'=>['all'=>true],
'unset_dump_after'=>true,
'debug_backtrace'=>false
];
$dump_fields=[
'path'=>__DIR__.'/../temp',
//'user'=>'', // Can be changed by the client part (via the browser console)
//'context'=>'',// Can be changed by the client part (via the browser console)
//'group'=>'', //Can be changed by the client part (via the browser console)
//'name'=>'', // only for server part
];
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π΄Π°ΠΌΠΏΠ°, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ $dump_settings['turn_on']=false;
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΄Π°ΠΌΠΏ, ΡΠΎ ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
ΠΌΠ°ΡΡΠΈΠ² $dump_settings['turn_on']=[];
ΠΠ°Π½Π½ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ.
Π ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΡ Π΄Π°Π½Π½ΡΡ
ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΄Π»Ρ ΠΈΡ
Π²ΡΠ²ΠΎΠ΄Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΡ
ΠΏΠΎΠ΄ ΠΌΠ΅ΡΠΊΠΎΠΉ.
ΠΠ°ΡΡΠΈΠ½Π³ ΠΠ΅ΡΠΎΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½. Π Π΅ΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΠ΄ΠΈΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π³ΡΡΠΏΠΏΡ ΠΌΠ΅ΡΠΎΠΊ,
ΡΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½ ΡΡΠΎΠΉ Π³ΡΡΠΏΠΏΡ.
Π ΠΏΡΠΈΠΌΠ΅ΡΡ Π΅ΡΡΡ ΠΌΠ΅ΡΠΊΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ "Producer\Product\Class" ΠΈ ΠΌΠ΅ΡΠΊΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ "Producer\Product\Class2
// ΠΡΠΊΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ ΠΊΡΠΎΠΌΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΠΌΠ΅ΡΠΎΠΊ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ "Producer\\Product\\Class"
$dump_settings['turn_on']=['all'=>false,'Errors':true,'Producer\\Product\\Class'=>true];
// ΠΡΠΊΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ ΠΊΡΠΎΠΌΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΠΌΠ΅ΡΠΎΠΊ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Producer\\Product. ΠΠ°Π½Π½ΡΠ΅ Ρ ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ Producer\\Product\\Class ΠΈ Producer\\Product\\Class2 Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ
$dump_settings['turn_on']=['all'=>false,'Errors':true,'Producer\\Product'=>true];
// ΠΡΠΊΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΠ²ΠΎΠ΄ ΠΎΡΠΈΠ±ΠΎΠΊ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 1024 ΠΈ Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΌΠ΅ΡΠΊΠΎΠΉ Producer\\Product::method
$dump_settings['turn_on']=['all'=>true,'Errors\\1024':false,'Producer\\Product'=>false];
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ²ΠΎΠ΄ backtrace
$dump_settings['debug_backtrace']= true;
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄Π°ΠΌΠΏΠΎΠ², ΡΠΎ:
$dump_settings['unset_dump_after']= false;
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°ΠΌΠΏΠ°:
$dump_fields['path']='new dirictory';
Π€Π°ΠΉΠ»Ρ ΠΈΠΌΠ΅ΡΡ Π½Π΅ΠΊΠΈΠΉ ΠΏΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΡΡΡΠΎΡΡΡΡ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ:
user/context/timestamp_group_name.json
//Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π³ΡΡΠΏΠΏΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°ΠΌΠΏΠ° Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠΈΡ ΠΈΠ»ΠΈ other_user. ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ.
$dump_fields['user']='name';
// ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π½Π΅ΠΊΡΡ Π³ΡΡΠΏΠΏΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° (Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΠΎΠ΄Π½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π²Π΄Π°Π½ΠΈΠΌΠ°). ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ. ΠΠ°Π·Π½Π°ΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ.
$dump_fields['context']='num_tab';
// Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ Π΄Π°ΠΌΠΏΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π². ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΠΎΠΆΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ. ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ.
$dump_fields['group']='name_group';
// ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΡΠΈΠΊΡ Π½Π°Π·Π²Π°Π½ΠΈΡ (ΠΈΠΌΡ) ΡΠ°ΠΉΠ»Π°. ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ. ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ²Π΅Ρ.
$dump_fields['name']='name';
ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π΄Π»Ρ $dump_fields Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΠΎΠ½ΠΈ Π½Π°ΡΠ½ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½ΠΎΠ²ΡΡ
Π²ΠΊΠ»Π°Π΄ΠΎΠΊ.
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ PhpDump Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Π² ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ other_user ΠΈ ΠΏΡΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° "context"(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ id Π²ΠΊΠ»Π°Π΄ΠΊΠΈ),
Π΅ΡΡΡ ΡΠ°Π½Ρ ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π΄Π»Ρ 'group' ΠΈ 'name' ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΡΡΡΡ ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π°ΠΌΠΏΠ° (ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ»ΠΈ ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΆΠΎΠ³ΠΎ Π΄Π°ΠΌΠΏΠ°).
ΠΠΎ ΡΠ°ΠΊΠΎΠΉ ΡΠ°Π½Ρ Π½Π΅ Π²Π΅Π»ΠΈΠΊ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ PhpDump Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ Π³ΡΡΠΏΠΏΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΡΠ»ΠΈ Π²ΡΠ΅ ΡΠ°ΠΊΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ²Π΅ΡΡΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ $dump_fields['name']=uniqid().uniqid().uniqid(); ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΠΉΡΠ΅ ΠΈΠ½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
Π ΡΠ°ΠΉΠ»Π΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠ° Alpa\PhpDump\Manager ΡΠΊΠ°Π·Π°Π½ ΠΏΡΠ²Π΄ΠΎΠ½ΠΈΠΌ \deb, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ Π² Π΄Π°ΠΌΠΏ. Π ΡΠ°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΡΠ΅Π²Π΄ΠΎ ΠΊΠ»Π°ΡΡ. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±Π΅ΡΡΠΊΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠ΅Π²Π΄ΠΎ ΠΊΠ»Π°ΡΡ:
- Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ. Π£Π΄ΠΎΠ±Π½Π΅ΠΉ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊ \deb::print('Hello'); ΡΠ΅ΠΌ ΡΠ°ΠΊ \Alpa\PhpDump\Manager::print('Hello');
- ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅Π»Π΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΡΠ»Π΅Π΄Ρ (ΠΌΠ΅ΡΠΎΠ΄Ρ php dump), ΡΡΠΎΠ±Ρ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π΄Π°ΠΌΠΏΠ° Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠΎΡΠ΅ΠΊ (ΡΠ°Π²Π½ΠΎΡΠΈΠ»ΡΠ½ΠΎ Π»ΠΎΠ³Π°ΠΌ), ΡΠΎ Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½ Π²Π΅ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ php dump, ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡ Π·Π°Π³Π»ΡΡΠΊΡ, Π³Π΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ __call ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ Π·Π°Π³Π»ΡΡΠΊΠΈ. ΠΠ»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΎΠ±Π΅ΡΡΠΎΠΊ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΡΡΡΠΌΠΈ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² PHP ΡΡΠ΅Π½Π°ΡΠΈΠΈ:
\deb::vdump($var,$label='')// - ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ var_dump
\deb::vexport($var,$label='');//- ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ var_export
\deb::print($var,$label='');// - Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. (Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡ)
\deb::dump($var,$label='');// - ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΡΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΈΡ
. ΠΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
\deb::infoClass($var,$label='');// ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ»Π°ΡΡΠ΅
\deb::error($errno = false, $errstr, $errfile = false, $errline = false, $errcontext = false)
ΠΡΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠ°ΠΉΡΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡΡ. PhpDump ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅Ρ Π² ΡΠ°Π±ΠΎΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈ Π΄Π»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠ²Π»ΡΡΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ (Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ) ΠΈ Π΄Π΅ΠΉΡΡΠ²ΡΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΏΡΠΈ Π΅Π΅ Π·Π°ΠΊΡΡΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π»Ρ Π½Π΅Π΅ PhpDump ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π΅ ΡΠ΄ΠΎΠ±Π½ΡΠΌ, Π½ΠΎ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈ Π²ΡΠ·ΠΎΠ² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ API. Π§ΡΠΎΠ±Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎ api Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π²ΡΠΏΠ°Π΄Π°ΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ. ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡΠ³Π»Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ "top") Π²ΡΠ±ΡΠ°ΡΡ PhpDumpConsole.
// dm - ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄
dm.renderStack();//Π²ΡΠ²ΠΎΠ΄ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΡΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ
Π΄Π°ΠΌΠΏΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ ΡΡΡΠ°Π½ΠΈΡΡ
dm.renderDump(); //ΠΡΠ²ΠΎΠ΄ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π°ΠΌΠΏΠ°
dm.renderSettings(callback=false); //ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ(ΠΏΠΎ url). callback function Π΅ΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ ΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ callback -ΠΎΠΌ.
var settings=[{
url:'', // ΡΡΠ» ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ window.location.href.
regexp:'', // ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ΅ΡΡΡΡΠΎΠ² ΡΠ°ΠΉΡΠ°. url ΠΈ regexp ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΏΠ°ΡΠ΅ ΡΠΌ. `url=url.trim()!=''?'^'+$url:''; new RegExp(url+regexp,'i');
turn_on:{ // ΡΠΌ PHP $dump_settings['turn_on']
'all':false ,
'group2\\group1':true,
'group3':true,
'namespace/name':true,
},
debug_backtrace:false, ΡΠΌ PHP $dump_settings['debug_backtrace']
}];
dm.setSettings(settings,save=false); // ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΡΠ°ΠΉΡΠ° ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ Π΄Π»Ρ Π½Π΅Π³ΠΎ. save =true -Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΡΡΡ, ΠΈ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ.
/*
**ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅**: ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΡΠ°ΠΉΡΠ° ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ ΡΠ°Π½Π΅Π΅, ΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ url ΠΈ regexp Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ.
Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π±ΡΠ΄ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΊΠ°ΠΊ Π½ΠΎΠ²ΡΠ΅.
Π’Π°ΠΊΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΠΈΡ
ΠΏΡΠ°Π²ΠΈΠ» Π±ΡΠ΄ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ url ΡΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΏΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΡΠ°ΠΉΡΠ°, Π°
ΠΏΡΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ² - Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ Π² ΡΡΠ΅ΠΊΠ΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ. (ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²)
*/
var settings =[{url:'url',regexp:'regexp',type:'link'}];
dm.clearSettings(settings,save=false); //ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
// type ='link', ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΡΡΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡ ΠΊ url.
// type!='link', ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΠ΅Π³ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΌ. setSettings();.
// save =true ΡΠΎΡ
ΡΠ°Π½ΠΈΡ ΡΠ±ΡΠΎΡ.
dm.clearAllSettings(save=ture/false); // ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ
dm.saveStorageAllSettings(); // ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ , ΠΏΡΠΎΠΈΠ·ΠΎΡΠ΅Π΄ΡΠΈΡ
Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
.
//ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ
param={
hashkey:'HashKey', // ΠΊΠ»ΡΡ ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ. ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΠΊ Π»ΡΠ±ΠΎΠΌΡ Π΄ΠΎΠΌΠ΅Π½Ρ.
greeting_server:'greeting_server', // ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΏΠ°ΡΠΎΠ»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠ΅ΡΠ²Π΅Ρ Π°Π²ΡΠΎΡΠΈΠ·ΡΠ΅ΡΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ.
greeting_client:'greeting_client' // ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΏΠ°ΡΠΎΠ»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ.
}
dm.setHashKey(param); // ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ/ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ Ρ
Π°ΡΠΊΠ΅ΠΉ
dm.deleteHashKey({hashkey:'name'}); // ΡΠ΄Π°Π»ΡΠ΅Ρ Ρ
Π°ΡΠΊΠ΅ΠΉ.
dm.bindHashKeyDomain({hashkey:'HashKey',domain:'qwer.qw'});//ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Ρ
Π°ΡΠΊΠ΅ΠΉ ΠΊ Π΄ΠΎΠΌΠ΅Π½Ρ. ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΠΎ ΡΡΠΎΠΌΡ Ρ
Π°ΡΠΊΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π°Π²ΡΠΎΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡΡΡ Ρ Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ.
//Π΅ΡΠ»ΠΈ domain='global' Ρ
Π°ΡΠΊΠ΅ΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠΎΠ² ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Ρ
Π°ΡΠΊΠ΅ΠΉ.
dm.unbindHashKeyDomain({domain:'ggg',hashkey:'ggg'});// ΠΎΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Ρ
Π°ΡΠΊΠ΅ΠΉ ΠΎΡ Π΄ΠΎΠΌΠ΅Π½Π°...
dm.getAuthHashKeys(callback=false); // Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Ρ
Π°ΡΠΊΠ΅ΠΈ
//Π΅ΡΠ»ΠΈ callback =function(data_return){} ΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΊΠ°Π»Π±Π΅ΠΊΠΎΠΌ. ΠΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΠΎΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ Π·Π°ΡΠΈΡΡΠΊΠΈ Π½Π΅ Π½ΡΠΆΠ½ΡΡ
Ρ
Π°ΡΠΊΠ΅Π΅Π².
E_ERROR: Allowed memory size of ******** bytes exhausted
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄Π°ΠΌΠΏΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°. Π’.ΠΊ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π΄ΠΎΡΠ΅ΡΠ½Π΅ΠΌΡ ΡΠ²ΠΎΠΉΡΡΠ²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΡΠΎΠ΅ΡΡΡ Π² json_encode, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ json ΡΡΡΠΎΠΊΡ Π²ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ, Π° Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΠΏΠΎΡΠΎΠΊ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ - ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π² php. ΠΠ°Π΄ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π±ΡΡΡΡΡ Π»ΡΡΡΠΈΠ΅ ΡΠΌΡ. ΠΠ ΠΏΠΎΠΊΠ° Π²ΡΠ΅Ρ Π²ΡΠ΅ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ Π΅ΡΠ»ΠΈ Π½Π΅ Π·Π°ΠΆΠΈΡΠ°ΡΡΡΡ.
HTTP ERROR 500 - ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠ°
ΠΡΠ»ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΠ» Apache (ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ) ΡΠΎ Π΄Π°ΠΌΠΏ Π½Π΅ ΡΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ. ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π΄Π°ΠΌΠΏΠ°, PhpDump ΠΎΡΠ΄Π°ΡΡ Π½Π΅ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π°ΠΌΠΏ. ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°Ρ ΡΠ°ΡΡΡ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ Π΅Π³ΠΎ ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ NETWORK Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π΄Π°ΠΌΠΏΠ°.
(ΡΡΠΎΠ±Ρ ΡΠ°ΠΉΠ» ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π»ΡΡ json Π΄Π΅ΠΊΠΎΠ΄Π΅ΡΠ°ΠΌΠΈ, ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΌ Π·Π°ΠΊΡΡΡΠΈΠΈ, Π½Π°Π΄ΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΠΈ ΡΠΈΠ³ΡΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠΈ -"]}" )
ΠΡΠ»ΠΈ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½ ΠΎΡΠ²Π΅Ρ 500 ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π±Π΅Π· ΠΏΠΎΠ³ΡΡΠ·ΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° (ΡΠΊΡΠΈΠΏΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ PhpDumpConsole Π΄Π»Ρ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½), ΡΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΡΠ΄Π°ΡΡ. ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ ΡΡΠΎ, ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΡ, Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΡΠΊΡΠΈΠΏΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΡΡΠ΅Ρ ΠΎΡΠ²Π΅Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠΎΠ½ΠΎΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ PhpDumpConsole.
ΠΠΎΡΡΠΎΠΌΡ ΠΎΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΌ.
Π‘ΠΌ Chrome Extensions ΡΠΎΠ½ΠΎΠ²Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΡ Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ²ΠΎΠΉΡΡΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΌ https://github.com/ALexeyP0708/EntityDetails