function phpThumbDebug() { if ($this->config_disable_debug) { $this->ErrorImage('phpThumbDebug disabled'); } $FunctionsExistance = array('exif_thumbnail', 'gd_info', 'image_type_to_mime_type', 'ImageCopyResampled', 'ImageCopyResized', 'ImageCreate', 'ImageCreateFromString', 'ImageCreateTrueColor', 'ImageIsTrueColor', 'ImageRotate', 'ImageTypes', 'version_compare', 'ImageCreateFromGIF', 'ImageCreateFromJPEG', 'ImageCreateFromPNG', 'ImageCreateFromWBMP', 'ImageCreateFromXBM', 'ImageCreateFromXPM', 'ImageCreateFromString', 'ImageCreateFromGD', 'ImageCreateFromGD2', 'ImageCreateFromGD2Part', 'ImageJPEG', 'ImageGIF', 'ImagePNG', 'ImageWBMP'); $ParameterNames = array('w', 'h', 'f', 'q', 'sx', 'sy', 'sw', 'sh', 'bw', 'bg', 'bgt', 'bc', 'usr', 'usa', 'ust', 'wmf', 'wmp', 'wmm', 'wma', 'file', 'goto', 'err', 'xto', 'ra', 'ar', 'aoe', 'iar', 'brx', 'bry', 'maxb'); $OtherVariableNames = array('phpThumbDebug', 'thumbnailQuality', 'thumbnailFormat', 'gdimg_output', 'gdimg_source', 'sourceFilename', 'source_width', 'source_height', 'thumbnailCropX', 'thumbnailCropY', 'thumbnailCropW', 'thumbnailCropH', 'exif_thumbnail_width', 'exif_thumbnail_height', 'exif_thumbnail_type', 'thumbnail_width', 'thumbnail_height', 'thumbnail_image_width', 'thumbnail_image_height'); $DebugOutput = array(); $DebugOutput[] = 'phpThumb() version = ' . PHPTHUMB_VERSION; $DebugOutput[] = 'phpversion() = ' . @phpversion(); $DebugOutput[] = 'PHP_OS = ' . PHP_OS; $DebugOutput[] = '$_SERVER[PHP_SELF] = ' . @$_SERVER['PHP_SELF']; $DebugOutput[] = 'realpath(.) = ' . @realpath('.'); $DebugOutput[] = 'get_magic_quotes_gpc() = ' . @get_magic_quotes_gpc(); $DebugOutput[] = 'get_magic_quotes_runtime() = ' . @get_magic_quotes_runtime(); $DebugOutput[] = 'ini_get(error_reporting) = ' . @ini_get('error_reporting'); $DebugOutput[] = 'ini_get(allow_url_fopen) = ' . @ini_get('allow_url_fopen'); $DebugOutput[] = 'ini_get(safe_mode) = ' . @ini_get('safe_mode'); $DebugOutput[] = 'ini_get(open_basedir) = ' . @ini_get('open_basedir'); $DebugOutput[] = 'ini_get(memory_limit) = ' . @ini_get('memory_limit'); $DebugOutput[] = 'get_cfg_var(memory_limit) = ' . @get_cfg_var('memory_limit'); $DebugOutput[] = 'memory_get_usage() = ' . (function_exists('memory_get_usage') ? @memory_get_usage() : 'n/a'); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_cache_directory = ' . $this->phpThumbDebugVarDump($this->config_cache_directory); $DebugOutput[] = '$this->config_output_format = ' . $this->phpThumbDebugVarDump($this->config_output_format); $DebugOutput[] = '$this->config_output_maxwidth = ' . $this->phpThumbDebugVarDump($this->config_output_maxwidth); $DebugOutput[] = '$this->config_output_maxheight = ' . $this->phpThumbDebugVarDump($this->config_output_maxheight); $DebugOutput[] = '$this->config_error_message_image_default = ' . $this->phpThumbDebugVarDump($this->config_error_message_image_default); $DebugOutput[] = '$this->config_error_bgcolor = ' . $this->phpThumbDebugVarDump($this->config_error_bgcolor); $DebugOutput[] = '$this->config_error_textcolor = ' . $this->phpThumbDebugVarDump($this->config_error_textcolor); $DebugOutput[] = '$this->config_error_fontsize = ' . $this->phpThumbDebugVarDump($this->config_error_fontsize); $DebugOutput[] = '$this->config_nohotlink_enabled = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_enabled); $DebugOutput[] = '$this->config_nohotlink_valid_domains = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_valid_domains); $DebugOutput[] = '$this->config_nohotlink_erase_image = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_erase_image); $DebugOutput[] = '$this->config_nohotlink_fill_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_fill_hexcolor); $DebugOutput[] = '$this->config_nohotlink_text_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_text_hexcolor); $DebugOutput[] = '$this->config_nohotlink_text_message = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_text_message); $DebugOutput[] = '$this->config_nohotlink_text_fontsize = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_text_fontsize); $DebugOutput[] = '$this->config_border_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_border_hexcolor); $DebugOutput[] = '$this->config_background_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_background_hexcolor); $DebugOutput[] = '$this->config_max_source_pixels = ' . $this->phpThumbDebugVarDump($this->config_max_source_pixels); $DebugOutput[] = '$this->config_imagemagick_path = ' . $this->phpThumbDebugVarDump($this->config_imagemagick_path); $DebugOutput[] = '$this->config_use_exif_thumbnail_for_speed = ' . $this->phpThumbDebugVarDump($this->config_use_exif_thumbnail_for_speed); $DebugOutput[] = '$this->config_output_allow_enlarging = ' . $this->phpThumbDebugVarDump($this->config_output_allow_enlarging); $DebugOutput[] = ''; foreach ($OtherVariableNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 27, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = 'strlen($this->rawImageData) = ' . strlen(@$this->rawImageData); $DebugOutput[] = 'strlen($this->exif_thumbnail_data) = ' . strlen(@$this->exif_thumbnail_data); $DebugOutput[] = ''; foreach ($ParameterNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 4, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; foreach ($FunctionsExistance as $functionname) { $DebugOutput[] = 'builtin_function_exists(' . $functionname . ')' . str_repeat(' ', 23 - strlen($functionname)) . ' = ' . $this->phpThumbDebugVarDump(phpthumb_functions::builtin_function_exists($functionname)); } $DebugOutput[] = ''; $gd_info = phpthumb_functions::gd_info(); foreach ($gd_info as $key => $value) { $DebugOutput[] = 'gd_info.' . str_pad($key, 34, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; $exif_info = phpthumb_functions::exif_info(); foreach ($exif_info as $key => $value) { $DebugOutput[] = 'exif_info.' . str_pad($key, 32, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; if (isset($_GET) && is_array($_GET)) { foreach ($_GET as $key => $value) { $DebugOutput[] = '$_GET[' . $key . ']' . str_repeat(' ', 36 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } if (isset($_POST) && is_array($_POST)) { foreach ($_POST as $key => $value) { $DebugOutput[] = '$_POST[' . $key . ']' . str_repeat(' ', 35 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } $this->ErrorImage(implode("\n", $DebugOutput), 700, 500); }
function phpThumbDebug($level = '') { if ($level && $this->phpThumbDebug !== $level) { return true; } if ($this->config_disable_debug) { return $this->ErrorImage('phpThumbDebug disabled'); } $FunctionsExistance = array('exif_thumbnail', 'gd_info', 'image_type_to_mime_type', 'GetImageSize', 'ImageCopyResampled', 'ImageCopyResized', 'ImageCreate', 'ImageCreateFromString', 'ImageCreateTrueColor', 'ImageIsTrueColor', 'ImageRotate', 'ImageTypes', 'version_compare', 'ImageCreateFromGIF', 'ImageCreateFromJPEG', 'ImageCreateFromPNG', 'ImageCreateFromWBMP', 'ImageCreateFromXBM', 'ImageCreateFromXPM', 'ImageCreateFromString', 'ImageCreateFromGD', 'ImageCreateFromGD2', 'ImageCreateFromGD2Part', 'ImageJPEG', 'ImageGIF', 'ImagePNG', 'ImageWBMP'); $ParameterNames = array('src', 'new', 'w', 'h', 'f', 'q', 'sx', 'sy', 'sw', 'sh', 'far', 'bg', 'bc', 'file', 'goto', 'err', 'xto', 'ra', 'ar', 'aoe', 'iar', 'maxb'); $ConfigVariableNames = array('document_root', 'temp_directory', 'output_format', 'output_maxwidth', 'output_maxheight', 'error_message_image_default', 'error_bgcolor', 'error_textcolor', 'error_fontsize', 'error_die_on_error', 'error_silent_die_on_error', 'error_die_on_source_failure', 'nohotlink_enabled', 'nohotlink_valid_domains', 'nohotlink_erase_image', 'nohotlink_text_message', 'nooffsitelink_enabled', 'nooffsitelink_valid_domains', 'nooffsitelink_require_refer', 'nooffsitelink_erase_image', 'nooffsitelink_text_message', 'high_security_enabled', 'allow_src_above_docroot', 'allow_src_above_phpthumb', 'max_source_pixels', 'use_exif_thumbnail_for_speed', 'border_hexcolor', 'background_hexcolor', 'ttf_directory', 'disable_pathinfo_parsing', 'disable_imagecopyresampled'); $OtherVariableNames = array('phpThumbDebug', 'thumbnailQuality', 'thumbnailFormat', 'gdimg_output', 'gdimg_source', 'sourceFilename', 'source_width', 'source_height', 'thumbnailCropX', 'thumbnailCropY', 'thumbnailCropW', 'thumbnailCropH', 'exif_thumbnail_width', 'exif_thumbnail_height', 'exif_thumbnail_type', 'thumbnail_width', 'thumbnail_height', 'thumbnail_image_width', 'thumbnail_image_height'); $DebugOutput = array(); $DebugOutput[] = 'phpThumb() version = ' . $this->phpthumb_version; $DebugOutput[] = 'phpversion() = ' . @phpversion(); $DebugOutput[] = 'PHP_OS = ' . PHP_OS; $DebugOutput[] = '$_SERVER[SERVER_SOFTWARE] = ' . @$_SERVER['SERVER_SOFTWARE']; $DebugOutput[] = '__FILE__ = ' . __FILE__; $DebugOutput[] = 'realpath(.) = ' . @realpath('.'); $DebugOutput[] = '$_SERVER[PHP_SELF] = ' . @$_SERVER['PHP_SELF']; $DebugOutput[] = '$_SERVER[HOST_NAME] = ' . @$_SERVER['HOST_NAME']; $DebugOutput[] = '$_SERVER[HTTP_REFERER] = ' . @$_SERVER['HTTP_REFERER']; $DebugOutput[] = '$_SERVER[QUERY_STRING] = ' . @$_SERVER['QUERY_STRING']; $DebugOutput[] = '$_SERVER[PATH_INFO] = ' . @$_SERVER['PATH_INFO']; $DebugOutput[] = '$_SERVER[DOCUMENT_ROOT] = ' . @$_SERVER['DOCUMENT_ROOT']; $DebugOutput[] = 'getenv(DOCUMENT_ROOT) = ' . @getenv('DOCUMENT_ROOT'); $DebugOutput[] = ''; $DebugOutput[] = 'get_magic_quotes_gpc() = ' . $this->phpThumbDebugVarDump(@get_magic_quotes_gpc()); $DebugOutput[] = 'get_magic_quotes_runtime() = ' . $this->phpThumbDebugVarDump(@get_magic_quotes_runtime()); $DebugOutput[] = 'error_reporting() = ' . $this->phpThumbDebugVarDump(error_reporting()); $DebugOutput[] = 'ini_get(error_reporting) = ' . $this->phpThumbDebugVarDump(@ini_get('error_reporting')); $DebugOutput[] = 'ini_get(display_errors) = ' . $this->phpThumbDebugVarDump(@ini_get('display_errors')); $DebugOutput[] = 'ini_get(allow_url_fopen) = ' . $this->phpThumbDebugVarDump(@ini_get('allow_url_fopen')); $DebugOutput[] = 'ini_get(disable_functions) = ' . $this->phpThumbDebugVarDump(@ini_get('disable_functions')); $DebugOutput[] = 'get_cfg_var(disable_functions) = ' . $this->phpThumbDebugVarDump(@get_cfg_var('disable_functions')); $DebugOutput[] = 'ini_get(safe_mode) = ' . $this->phpThumbDebugVarDump(@ini_get('safe_mode')); $DebugOutput[] = 'ini_get(open_basedir) = ' . $this->phpThumbDebugVarDump(@ini_get('open_basedir')); $DebugOutput[] = 'ini_get(max_execution_time) = ' . $this->phpThumbDebugVarDump(@ini_get('max_execution_time')); $DebugOutput[] = 'ini_get(memory_limit) = ' . $this->phpThumbDebugVarDump(@ini_get('memory_limit')); $DebugOutput[] = 'get_cfg_var(memory_limit) = ' . $this->phpThumbDebugVarDump(@get_cfg_var('memory_limit')); $DebugOutput[] = 'memory_get_usage() = ' . (function_exists('memory_get_usage') ? $this->phpThumbDebugVarDump(@memory_get_usage()) : 'n/a'); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_prefer_imagemagick = ' . $this->phpThumbDebugVarDump($this->config_prefer_imagemagick); $DebugOutput[] = '$this->config_imagemagick_path = ' . $this->phpThumbDebugVarDump($this->config_imagemagick_path); $DebugOutput[] = '$this->ImageMagickWhichConvert() = ' . $this->ImageMagickWhichConvert(); $IMpathUsed = $this->config_imagemagick_path ? $this->config_imagemagick_path : $this->ImageMagickWhichConvert(); $DebugOutput[] = '[actual ImageMagick path used] = ' . $this->phpThumbDebugVarDump($IMpathUsed); $DebugOutput[] = 'file_exists([actual ImageMagick path used]) = ' . $this->phpThumbDebugVarDump(@file_exists($IMpathUsed)); $DebugOutput[] = 'ImageMagickVersion(false) = ' . $this->ImageMagickVersion(false); $DebugOutput[] = 'ImageMagickVersion(true) = ' . $this->ImageMagickVersion(true); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_cache_directory = ' . $this->phpThumbDebugVarDump($this->config_cache_directory); $DebugOutput[] = '$this->config_cache_directory_depth = ' . $this->phpThumbDebugVarDump($this->config_cache_directory_depth); $DebugOutput[] = '$this->config_cache_disable_warning = ' . $this->phpThumbDebugVarDump($this->config_cache_disable_warning); $DebugOutput[] = '$this->config_cache_maxage = ' . $this->phpThumbDebugVarDump($this->config_cache_maxage); $DebugOutput[] = '$this->config_cache_maxsize = ' . $this->phpThumbDebugVarDump($this->config_cache_maxsize); $DebugOutput[] = '$this->config_cache_maxfiles = ' . $this->phpThumbDebugVarDump($this->config_cache_maxfiles); $DebugOutput[] = '$this->config_cache_force_passthru = ' . $this->phpThumbDebugVarDump($this->config_cache_force_passthru); $DebugOutput[] = '$this->cache_filename = ' . $this->phpThumbDebugVarDump($this->cache_filename); $DebugOutput[] = 'is_readable($this->config_cache_directory) = ' . $this->phpThumbDebugVarDump(@is_readable($this->config_cache_directory)); $DebugOutput[] = 'is_writable($this->config_cache_directory) = ' . $this->phpThumbDebugVarDump(@is_writable($this->config_cache_directory)); $DebugOutput[] = 'is_readable($this->cache_filename) = ' . $this->phpThumbDebugVarDump(@is_readable($this->cache_filename)); $DebugOutput[] = 'is_writable($this->cache_filename) = ' . (@file_exists($this->cache_filename) ? $this->phpThumbDebugVarDump(@is_writable($this->cache_filename)) : 'n/a'); $DebugOutput[] = ''; foreach ($ConfigVariableNames as $varname) { $varname = 'config_' . $varname; $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 37, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; foreach ($OtherVariableNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 27, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = 'strlen($this->rawImageData) = ' . strlen(@$this->rawImageData); $DebugOutput[] = 'strlen($this->exif_thumbnail_data) = ' . strlen(@$this->exif_thumbnail_data); $DebugOutput[] = ''; foreach ($ParameterNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 4, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; foreach ($FunctionsExistance as $functionname) { $DebugOutput[] = 'builtin_function_exists(' . $functionname . ')' . str_repeat(' ', 23 - strlen($functionname)) . ' = ' . $this->phpThumbDebugVarDump(phpthumb_functions::builtin_function_exists($functionname)); } $DebugOutput[] = ''; $gd_info = gd_info(); foreach ($gd_info as $key => $value) { $DebugOutput[] = 'gd_info.' . str_pad($key, 34, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; $exif_info = phpthumb_functions::exif_info(); foreach ($exif_info as $key => $value) { $DebugOutput[] = 'exif_info.' . str_pad($key, 26, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; if ($ApacheLookupURIarray = phpthumb_functions::ApacheLookupURIarray(dirname(@$_SERVER['PHP_SELF']))) { foreach ($ApacheLookupURIarray as $key => $value) { $DebugOutput[] = 'ApacheLookupURIarray.' . str_pad($key, 15, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } } else { $DebugOutput[] = 'ApacheLookupURIarray() -- FAILED'; } $DebugOutput[] = ''; if (isset($_GET) && is_array($_GET)) { foreach ($_GET as $key => $value) { $DebugOutput[] = '$_GET[' . $key . ']' . str_repeat(' ', 30 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } if (isset($_POST) && is_array($_POST)) { foreach ($_POST as $key => $value) { $DebugOutput[] = '$_POST[' . $key . ']' . str_repeat(' ', 29 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } $DebugOutput[] = ''; $DebugOutput[] = '$this->debugmessages:'; foreach ($this->debugmessages as $errorstring) { $DebugOutput[] = ' * ' . $errorstring; } $DebugOutput[] = ''; $DebugOutput[] = '$this->debugtiming:'; foreach ($this->debugtiming as $timestamp => $timingstring) { $DebugOutput[] = ' * ' . $timestamp . ' ' . $timingstring; } $DebugOutput[] = ' * Total processing time: ' . number_format(max(array_keys($this->debugtiming)) - min(array_keys($this->debugtiming)), 6); $this->f = isset($_GET['f']) ? $_GET['f'] : $this->f; // debug modes 0-2 don't recognize text mode otherwise return $this->ErrorImage(implode("\n", $DebugOutput), 700, 500, true); }
function phpThumbDebug() { if ($this->config_disable_debug) { return $this->ErrorImage('phpThumbDebug disabled'); } $FunctionsExistance = array('exif_thumbnail', 'gd_info', 'image_type_to_mime_type', 'ImageCopyResampled', 'ImageCopyResized', 'ImageCreate', 'ImageCreateFromString', 'ImageCreateTrueColor', 'ImageIsTrueColor', 'ImageRotate', 'ImageTypes', 'version_compare', 'ImageCreateFromGIF', 'ImageCreateFromJPEG', 'ImageCreateFromPNG', 'ImageCreateFromWBMP', 'ImageCreateFromXBM', 'ImageCreateFromXPM', 'ImageCreateFromString', 'ImageCreateFromGD', 'ImageCreateFromGD2', 'ImageCreateFromGD2Part', 'ImageJPEG', 'ImageGIF', 'ImagePNG', 'ImageWBMP'); $ParameterNames = array('src', 'new', 'w', 'h', 'f', 'q', 'sx', 'sy', 'sw', 'sh', 'far', 'bg', 'bgt', 'bc', 'file', 'goto', 'err', 'xto', 'ra', 'ar', 'aoe', 'iar', 'maxb'); $OtherVariableNames = array('phpThumbDebug', 'thumbnailQuality', 'thumbnailFormat', 'gdimg_output', 'gdimg_source', 'sourceFilename', 'source_width', 'source_height', 'thumbnailCropX', 'thumbnailCropY', 'thumbnailCropW', 'thumbnailCropH', 'exif_thumbnail_width', 'exif_thumbnail_height', 'exif_thumbnail_type', 'thumbnail_width', 'thumbnail_height', 'thumbnail_image_width', 'thumbnail_image_height'); $DebugOutput = array(); $DebugOutput[] = 'phpThumb() version = ' . $this->phpthumb_version; $DebugOutput[] = 'phpversion() = ' . @phpversion(); $DebugOutput[] = 'PHP_OS = ' . PHP_OS; $DebugOutput[] = '$_SERVER[PHP_SELF] = ' . @$_SERVER['PHP_SELF']; $DebugOutput[] = '$_SERVER[DOCUMENT_ROOT] = ' . @$_SERVER['DOCUMENT_ROOT']; $DebugOutput[] = '$_SERVER[HTTP_REFERER] = ' . @$_SERVER['HTTP_REFERER']; $DebugOutput[] = '$_SERVER[QUERY_STRING] = ' . @$_SERVER['QUERY_STRING']; $DebugOutput[] = 'realpath(.) = ' . @realpath('.'); $DebugOutput[] = ''; $DebugOutput[] = 'get_magic_quotes_gpc() = ' . $this->phpThumbDebugVarDump(@get_magic_quotes_gpc()); $DebugOutput[] = 'get_magic_quotes_runtime() = ' . $this->phpThumbDebugVarDump(@get_magic_quotes_runtime()); $DebugOutput[] = 'error_reporting() = ' . $this->phpThumbDebugVarDump(error_reporting()); $DebugOutput[] = 'ini_get(error_reporting) = ' . $this->phpThumbDebugVarDump(@ini_get('error_reporting')); $DebugOutput[] = 'ini_get(display_errors) = ' . $this->phpThumbDebugVarDump(@ini_get('display_errors')); $DebugOutput[] = 'ini_get(allow_url_fopen) = ' . $this->phpThumbDebugVarDump(@ini_get('allow_url_fopen')); $DebugOutput[] = 'ini_get(disable_functions) = ' . $this->phpThumbDebugVarDump(@ini_get('disable_functions')); $DebugOutput[] = 'ini_get(safe_mode) = ' . $this->phpThumbDebugVarDump(@ini_get('safe_mode')); $DebugOutput[] = 'ini_get(open_basedir) = ' . $this->phpThumbDebugVarDump(@ini_get('open_basedir')); $DebugOutput[] = 'ini_get(memory_limit) = ' . $this->phpThumbDebugVarDump(@ini_get('memory_limit')); $DebugOutput[] = 'ini_get(max_execution_time) = ' . $this->phpThumbDebugVarDump(@ini_get('max_execution_time')); $DebugOutput[] = 'get_cfg_var(memory_limit) = ' . $this->phpThumbDebugVarDump(@get_cfg_var('memory_limit')); $DebugOutput[] = 'memory_get_usage() = ' . (function_exists('memory_get_usage') ? $this->phpThumbDebugVarDump(@memory_get_usage()) : 'n/a'); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_imagemagick_path = ' . $this->phpThumbDebugVarDump($this->config_imagemagick_path); $DebugOutput[] = 'SafeBackTick(which convert) = ' . trim(phpthumb_functions::SafeBackTick('which convert')); $IMpathUsed = $this->config_imagemagick_path ? $this->config_imagemagick_path : trim(phpthumb_functions::SafeBackTick('which convert')); $DebugOutput[] = '[actual ImageMagick path used] = ' . $this->phpThumbDebugVarDump($IMpathUsed); $DebugOutput[] = 'file_exists([actual ImageMagick path used]) = ' . $this->phpThumbDebugVarDump(file_exists($IMpathUsed)); $DebugOutput[] = 'ImageMagickVersion() = ' . $this->ImageMagickVersion(); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_cache_directory = ' . $this->phpThumbDebugVarDump($this->config_cache_directory); $DebugOutput[] = '$this->config_cache_disable_warning = ' . $this->phpThumbDebugVarDump($this->config_cache_disable_warning); $DebugOutput[] = '$this->config_cache_maxage = ' . $this->phpThumbDebugVarDump($this->config_cache_maxage); $DebugOutput[] = '$this->config_cache_maxsize = ' . $this->phpThumbDebugVarDump($this->config_cache_maxsize); $DebugOutput[] = '$this->config_cache_maxfiles = ' . $this->phpThumbDebugVarDump($this->config_cache_maxfiles); $DebugOutput[] = '$this->cache_filename = ' . $this->phpThumbDebugVarDump($this->cache_filename); $DebugOutput[] = 'is_writable($this->config_cache_directory) = ' . $this->phpThumbDebugVarDump(is_writable($this->config_cache_directory)); $DebugOutput[] = 'is_writable($this->cache_filename) = ' . (file_exists($this->cache_filename) ? $this->phpThumbDebugVarDump(is_writable($this->cache_filename)) : 'n/a'); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_document_root = ' . $this->phpThumbDebugVarDump($this->config_document_root); $DebugOutput[] = '$this->config_temp_directory = ' . $this->phpThumbDebugVarDump($this->config_temp_directory); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_output_format = ' . $this->phpThumbDebugVarDump($this->config_output_format); $DebugOutput[] = '$this->config_output_maxwidth = ' . $this->phpThumbDebugVarDump($this->config_output_maxwidth); $DebugOutput[] = '$this->config_output_maxheight = ' . $this->phpThumbDebugVarDump($this->config_output_maxheight); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_error_message_image_default = ' . $this->phpThumbDebugVarDump($this->config_error_message_image_default); $DebugOutput[] = '$this->config_error_bgcolor = ' . $this->phpThumbDebugVarDump($this->config_error_bgcolor); $DebugOutput[] = '$this->config_error_textcolor = ' . $this->phpThumbDebugVarDump($this->config_error_textcolor); $DebugOutput[] = '$this->config_error_fontsize = ' . $this->phpThumbDebugVarDump($this->config_error_fontsize); $DebugOutput[] = '$this->config_error_die_on_error = ' . $this->phpThumbDebugVarDump($this->config_error_die_on_error); $DebugOutput[] = '$this->config_error_die_on_error = ' . $this->phpThumbDebugVarDump($this->config_error_die_on_error); $DebugOutput[] = '$this->config_error_silent_die_on_error = ' . $this->phpThumbDebugVarDump($this->config_error_silent_die_on_error); $DebugOutput[] = '$this->config_error_die_on_source_failure = ' . $this->phpThumbDebugVarDump($this->config_error_die_on_source_failure); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_nohotlink_enabled = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_enabled); $DebugOutput[] = '$this->config_nohotlink_valid_domains = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_valid_domains); $DebugOutput[] = '$this->config_nohotlink_erase_image = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_erase_image); $DebugOutput[] = '$this->config_nohotlink_text_message = ' . $this->phpThumbDebugVarDump($this->config_nohotlink_text_message); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_nooffsitelink_enabled = ' . $this->phpThumbDebugVarDump($this->config_nooffsitelink_enabled); $DebugOutput[] = '$this->config_nooffsitelink_valid_domains = ' . $this->phpThumbDebugVarDump($this->config_nooffsitelink_valid_domains); $DebugOutput[] = '$this->config_nooffsitelink_require_refer = ' . $this->phpThumbDebugVarDump($this->config_nooffsitelink_require_refer); $DebugOutput[] = '$this->config_nooffsitelink_erase_image = ' . $this->phpThumbDebugVarDump($this->config_nooffsitelink_erase_image); $DebugOutput[] = '$this->config_nooffsitelink_text_message = ' . $this->phpThumbDebugVarDump($this->config_nooffsitelink_text_message); $DebugOutput[] = ''; $DebugOutput[] = '$this->config_max_source_pixels = ' . $this->phpThumbDebugVarDump($this->config_max_source_pixels); $DebugOutput[] = '$this->config_use_exif_thumbnail_for_speed = ' . $this->phpThumbDebugVarDump($this->config_use_exif_thumbnail_for_speed); $DebugOutput[] = '$this->config_output_allow_enlarging = ' . $this->phpThumbDebugVarDump($this->config_output_allow_enlarging); $DebugOutput[] = '$this->config_border_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_border_hexcolor); $DebugOutput[] = '$this->config_background_hexcolor = ' . $this->phpThumbDebugVarDump($this->config_background_hexcolor); $DebugOutput[] = '$this->config_ttf_directory = ' . $this->phpThumbDebugVarDump($this->config_ttf_directory); $DebugOutput[] = ''; foreach ($OtherVariableNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 27, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = 'strlen($this->rawImageData) = ' . strlen(@$this->rawImageData); $DebugOutput[] = 'strlen($this->exif_thumbnail_data) = ' . strlen(@$this->exif_thumbnail_data); $DebugOutput[] = ''; foreach ($ParameterNames as $varname) { $value = $this->{$varname}; $DebugOutput[] = '$this->' . str_pad($varname, 4, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; foreach ($FunctionsExistance as $functionname) { $DebugOutput[] = 'builtin_function_exists(' . $functionname . ')' . str_repeat(' ', 23 - strlen($functionname)) . ' = ' . $this->phpThumbDebugVarDump(phpthumb_functions::builtin_function_exists($functionname)); } $DebugOutput[] = ''; $gd_info = phpthumb_functions::gd_info(); foreach ($gd_info as $key => $value) { $DebugOutput[] = 'gd_info.' . str_pad($key, 34, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; $exif_info = phpthumb_functions::exif_info(); foreach ($exif_info as $key => $value) { $DebugOutput[] = 'exif_info.' . str_pad($key, 26, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } $DebugOutput[] = ''; if ($ApacheLookupURIarray = phpthumb_functions::ApacheLookupURIarray(dirname(@$_SERVER['PHP_SELF']))) { foreach ($ApacheLookupURIarray as $key => $value) { $DebugOutput[] = 'ApacheLookupURIarray.' . str_pad($key, 15, ' ', STR_PAD_RIGHT) . ' = ' . $this->phpThumbDebugVarDump($value); } } else { $DebugOutput[] = 'ApacheLookupURIarray() -- FAILED'; } $DebugOutput[] = ''; if (isset($_GET) && is_array($_GET)) { foreach ($_GET as $key => $value) { $DebugOutput[] = '$_GET[' . $key . ']' . str_repeat(' ', 30 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } if (isset($_POST) && is_array($_POST)) { foreach ($_POST as $key => $value) { $DebugOutput[] = '$_POST[' . $key . ']' . str_repeat(' ', 29 - strlen($key)) . '= ' . $this->phpThumbDebugVarDump($value); } } $DebugOutput[] = ''; $DebugOutput[] = '$this->debugmessages:'; foreach ($this->debugmessages as $errorstring) { $DebugOutput[] = ' * ' . $errorstring; } return $this->ErrorImage(implode("\n", $DebugOutput), 700, 500); }