<tbody>
<?php 
/* PHP VERSION CHECK */
$test = explode('.', phpversion());
$test = $test[0] > 4 || $test[0] == 4 && $test[1] >= 3;
$php_passed = $test;
$test = $test ? "<span class='passed'>Passed</span>" : "<span class='failed'>Failed >= 4.3.0 required</span>";
?>
<tr><th nowrap>PHP Version</th><td><?php 
echo $test . ' (' . phpversion() . ')';
?>
</td></tr>
<?php 
/* ZEND OPTIMIZER CHECK */
$zend_passed = function_exists('zend_loader_enabled') && zend_loader_enabled();
$test = function_exists('zend_loader_enabled') && zend_loader_enabled() ? "<span class='passed'>Passed</span>" : "<span class='failed'>Failed - Zend Optimizer is not installed.</span><p>\n   Zend Optimizer can be downloaded from <a href='http://www.zend.com/en/products/guard/optimizer/' target=_blank>http://www.zend.com</a>.";
?>
<tr><th nowrap>Zend Optimizer</th><td><?php 
echo $test;
?>
</td></tr>
<?php 
/* IONCUBE CHECK */
$sys_info = ic_system_info();
$dl_required = false;
ob_start();
if (!$already_installed) {
    if ($sys_info['THREAD_SAFE'] && !$sys_info['CGI_CLI']) {
        $errs[] = "Your PHP install appears to have threading support and run-time Loading\nis only possible on threaded web servers if using the CGI, FastCGI or\nCLI interface.{$nl}{$nl}To run encoded files please install the Loader in the php.ini file.{$nl}";
        $ok = false;
    }
$extensions = get_loaded_extensions();
$version = phpversion();
$minVersion = '5.2.0';
//-----------------------------------------
// Checking against required version
//-----------------------------------------
$checkRequiredVersion = version_compare($minVersion, $version, '<=');
flushOutput("Checking minimum version ({$minVersion})...", $checkRequiredVersion, "You must be running PHP v{$minVersion} or greater to use IP.Board " . IPB_VERSION . ".  You are currently running version {$version}.  Please ask your host to move you to a server running PHP v{$minVersion} or greater.");
print "<p>You are running PHP <strong>{$version}</strong></p>";
//-----------------------------------------
// Check for zend guard
//-----------------------------------------
$hasZend = false;
$hasIoncube = false;
if (function_exists('zend_loader_enabled')) {
    if (@zend_loader_enabled() === true) {
        $hasZend = true;
    }
}
if (extension_loaded('ionCube Loader')) {
    $hasIoncube = true;
}
flushOutput("IP.Nexus Only: Checking for ability to load Zend Guard encoded files...", $hasZend, "Not able to run the Zend encoded files for IP.Nexus.");
flushOutput("IP.Nexus Only: Checking for ability to load Ioncube encoded files...", $hasIoncube, "Not able to run the Ioncube encoded files for IP.Nexus.");
flushOutput("IP.Nexus Only: Can run IP.Nexus...", $hasZend or $hasIoncube, "Not able to run either Ioncube or Zend Encoded IP.Nexus files. You can still use IP.Board, IP.Downloads. IP.Blog, IP.Gallery, IP.Content, IP.Chat");
//-----------------------------------------
// Memory limit
//-----------------------------------------
$_memLimit = null;
$_recLimit = 128;
if (@ini_get('memory_limit')) {