CodeIgniter und pChart – HowTo
Seit ein paar Tagen spiele ich mich jetzt schon mit CodeIgniter und bin total begeistert. Hätte ich nicht mehrere Blogs und Themes/Plugins alles schon fertig würde ich doch wirklich überlegen meinen Blog nicht mit CodeIgniter umzusetzen. Denn um es kurz zu sagen, mit CodeIgniter geht’s einfach schnell zu entwickeln.
CodeIgniter Logo
Leider gibt es aber auch einen kleinen Nachteil. CodeIgniter initialisiert Klassen automatisch und stellt sie nicht einfach nur zur Verfügung. Am deutlichsten merkt man das bei Klassen die bei der Initialisierung bereits Parameter erwarten wie beispielsweise pChart. Um ein neues Chart anzulegen gibt man folgenden Befehl ab:
$Test = new pChart(700,230);
Damit erhält man ein pChart in der größe von 700 zu 230 Pixel. Da das aber mit CodeIgniter nicht funktioniert muss man sich etwas basteln. Ich habe dazu die pChart Libraries in meine Application Libraries verstaut und zwar im Unterordner pChart und rufe sie mit einer eigenen Chart Klasse auf:
class Chart {
function Chart() {
log_message( 'debug', 'Chart: initialized' );
}
function _Chart( $XSize, $YSize ) {
require_once( APPPATH . 'libraries/pChart/pChart.php' );
return new pChart( $XSize, $YSize );
}
function _Data() {
require_once( APPPATH . 'libraries/pChart/pData.php' );
return new pData();
}
function _Cache($CacheFolder="Cache/") {
require_once( APPPATH . 'libraries/pChart/pData.php' );
return new pCache($CacheFolder);
}
}
Jetzt kann ich die Chart-Klasse von CodeIgniter initialisieren lassen und wenn ich ein neues Chart erstellen will genügen folgende Befehle:
$this->load->library( array( 'chart' ) ); $DataSet = $this->chart->_Data(); ... $Test = $this->chart->_Chart(700,230); ...
Etwas tricky aber funktioniert sehr gut.
10. Februar 2010 um 15:48
It’s a nice work.
It’s hard to understand dutch but code is the best way to communicate.
Thanks to share
And it’s work fine
I had a little bug with font path
and Notice on out range value