:: Anbieterverzeichnis :: Globale Branchen
:: SELFPHP Forum ::
Fragen rund um die Themen PHP?
In über
130.000 Beiträgen finden Sie sicher die passende
Antwort! 
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
|
Statusinformationen zu den Speicher-Engines des Servers anzeigen  |
|
SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an.
Weitere Informationen
Beispielaufgabe
Statusinformationen zu den Speicher-Engines des Servers anzeigen.
Beschreibung
Die Funktion mysqlEngines() listet die Statusinformationen zu den Speicher-Engines (z.B. MyISAM, InnoDB etc.) des Servers auf, also welche Speicher-Engines unterstützt und standardmäßig genutzt werden. Da die Abfrage für MySQL-Server vor MySQL 4.1.2 anders war, so muss bei dieser Funktion zuerst die MySQL-Version ermittelt werden, um die richtige Abfrage aufrufen zu können. Als Rückgabewert liefert die Funktion ein Array mit den unterstützen Engines und deren Status (YES, NO oder DEFAULT).
- YES - Die Engine wird unterstützt
- NO - Die Engine wird nicht unterstützt
- DEFAULT - Die Standard-Engine
<?PHP
function mysqlEngines( ) {
$mysqlVersion = mysqlVersion( );
$format = array();
if ($mysqlVersion['int'] < 40102) {
$sql = "SHOW VARIABLES LIKE 'have%'";
$format['engine'] = 'Variable_name';
$format['value'] = 'Value';
$engines[0]['engine'] = 'MyISAM';
$engines[0]['support'] = 'DEFAULT';
$engines[1]['engine'] = 'MEMORY';
$engines[1]['support'] = 'YES';
$engines[2]['engine'] = 'MERGE';
$engines[2]['support'] = 'YES';
$engines[3]['engine'] = 'HEAP';
$engines[3]['support'] = 'YES';
$additionalEngines = array(
'have_archive' => 'ARCHIVE',
'have_bdb' => 'BDB',
'have_csv' => 'CSV',
'have_innodb' => 'InnoDB',
'have_isam' => 'ISAM',
'have_gemini' => 'Gemini'
);
}
else {
$sql = "SHOW STORAGE ENGINES";
$format['engine'] = 'Engine';
$format['value'] = 'Support';
}
$result = @mysql_query( $sql );
if( $mysqlVersion['int'] < 40102 )
$x = 4;
else
$x = 0;
while( ( $row = @mysql_fetch_array( $result, MYSQL_ASSOC ) ) == true ){
if( $mysqlVersion['int'] < 40102 ) {
if( !empty($additionalEngines[$row[$format['engine']]])){
$engines[$x]['engine'] = $additionalEngines[$row[$format['engine']]];
$engines[$x]['support'] = $row[$format['value']];
}
}
else {
$engines[$x]['engine'] = $row[$format['engine']];
$engines[$x]['support'] = $row[$format['value']];
}
$x++;
}
return $engines;
}
?>
|
Zusatzfunktionen
<?PHP
function mysqlVersion( ) {
$sql = 'SELECT VERSION( ) AS versionsinfo';
$result = @mysql_query($sql);
$version = @mysql_result( $result, 0, "versionsinfo" );
$match = explode( '.', $version );
$vers['txt'] = $version;
$vers['int'] = sprintf( '%d%02d%02d', $match[0], $match[1], intval( $match[2] ) );
return $vers;
}
?>
|
Anwendungsbeispiel
<?PHP
$conn = @mysql_connect("localhost", "mysql_user", "mysql_password");
if (!$conn) {
echo "Fehlende Verbindung zur DB: " . mysql_error();
exit;
}
print_r ( mysqlEngines() );
?>
|
Ausgabebeispiel: Browseransicht
Array
(
[0] => Array
(
[engine] => MEMORY
[support] => YES
)
[1] => Array
(
[engine] => FEDERATED
[support] => NO
)
[2] => Array
(
[engine] => MyISAM
[support] => DEFAULT
)
[3] => Array
(
[engine] => BLACKHOLE
[support] => YES
)
[4] => Array
(
[engine] => MRG_MYISAM
[support] => YES
)
[5] => Array
(
[engine] => CSV
[support] => YES
)
[6] => Array
(
[engine] => ARCHIVE
[support] => YES
)
[7] => Array
(
[engine] => InnoDB
[support] => YES
)
)
|

|
|
|
|
|


:: Anbieterverzeichnis ::
Webhosting/Serverlösungen
Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?
Sie sind nur ein paar Klicks davon entfernt! 
Ausgewählter Tipp im Bereich PHP-Skripte
Datum auf Gültigkeit überprüfen
Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
|