<?php
-/********************************* PHP-P10 ******************************
- * P10 uplink class by pk910 (c)2011 pk910 *
- ************************************************************************
- * Version 2 (OOP) *
+/******************************* PHP-P10 v2 *****************************
+ * Copyright (C) 2011-2012 Philipp Kreil (pk910) *
* *
- * PHP-P10 is free software; you can redistribute it and/or modify *
+ * This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
+ * the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
- * along with PHP-P10; if not, write to the Free Software Foundation, *
- * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ * along with this program. If not, see <http://www.gnu.org/licenses/>. *
* *
************************************************************************
- *
+ *
* BotLoader/saxdb.class.php
*
* Simple PHP P10 database.
const PARSER_EXPECT_VALUE = 0x0008;
const PARSER_STRING_LIST = 0x0010;
private $database = array();
-
+
public function loadDB($name) {
if(file_exists($name)) {
$fp = fopen($name, "r");
$this->database = $this->parseDB($db);
}
}
-
+
public function writeDB($name) {
$fp = fopen($name, "w");
$db = $this->serializeDB($this->database);
fwrite($fp, $db);
fclose($fp);
}
-
+
public function getSection($name) {
if(array_key_exists($name, $this->database)) {
return $this->database[$name];
return array();
}
}
-
+
public function setSection($name, $value) {
$this->database[$name] = $value;
}
-
+
private function parseDB($db) {
$parserflags = 0;
$openblocks = 0;
}
return $output;
}
-
+
private function serializeDB($db) {
$dbstring = "";
foreach($db as $name => $value) {
- if(!is_array($value) && !is_string($value) && !is_numeric($value)) continue;
+ if(!is_array($value) && !is_string($value) && !is_numeric($value)) {
+ echo"invalid type ".gettype($value)."\n";
+ continue;
+ }
$dbstring .= "\"".str_replace("\"","\\\"", $name)."\"";
if(is_array($value)) {
$dbstring .= "{";
}
return $dbstring;
}
-
+
}
?>
\ No newline at end of file