PHP über die Kommandozeile nutzen

Weil ich PHP schon so gewohnt bin möchte ich ein paar Skripts über die Kommandozeile laufen lassen. Meine Kollegen verwenden hierfür Pearl, aber weil ich mit der Pearl-Syntax nicht so vertraut bin möchte ich diese jetzt nicht lernen.

Mein Skript verwendet Mysql-Zugriffe und ich starte es folgendermaßen:
Code:
C:\wamp\php>php ../www/meinskript.php

Leider mag es meine Mysql-Funktionen nicht.
Fatal error: Call to undefined function mysql_connect() in C:\wamp\www\meinskript.php on line 3

Wisst ihr wie man das umgehen kann? Ich verwende Win XP und PHP 5.0.4
 
Dein PHP-Interpreter unterstützt offenbar MySQL garnicht. Schreibe mal ein "<? phpinfo(); ?>" in eine Datei und rufe diese mit 'php datei.php' auf. Wird dort bei den configure-Parametern der Parameter '--with-mysql' aufgeführt und gibt es einen Abschnitt für MySQL?
 
Wie's bei WAMP aussieht, weiß ich nicht. Möglicherweise gibt's aber 2 verschiedene php.ini-Dateien, eine für das Apache-Modul und eine für die Kommandozeilenversion von PHP. Dann könntest du mal schauen, ob in letzterer auch die MySQL-Extension eingebunden wird. Den Pfad zur verwendeten php.ini kannst du ebenfalls phpinfo() entnehmen.
 
Original von LX
Wie's bei WAMP aussieht, weiß ich nicht. Möglicherweise gibt's aber 2 verschiedene php.ini-Dateien, eine für das Apache-Modul und eine für die Kommandozeilenversion von PHP. Dann könntest du mal schauen, ob in letzterer auch die MySQL-Extension eingebunden wird. Den Pfad zur verwendeten php.ini kannst du ebenfalls phpinfo() entnehmen.
btw wieso 2 php.ini dateien? also ich hab immer nur eine (die wird von der Kommandozeile auch genutzt) und der pfad steht dann wahrscheinlich in der httpd.conf:

unter windows sowas wie
Code:
PHPIniDir "C:\\Apache\\php\\"

\EDIT: OK, WAMP - habs verstanden...
 
So jetzt bin ich wieder ein wenig schlauer geworden. php -i sagte mir, dass PHP die php.ini Datei unter C:\Windows sucht. Jetzt hab ich die von Apache einfach nach C:\Windows kopiert und jetzt funktioniert das ganze. Allerdings müsste der Modus (-c <path>|<file> Look for php.ini file in this directory) auch funktionieren, tut er aber nicht. Aber ist mir jetzt egal, hauptsache das Ding läuft und es ist auch gleich viel schneller als wenn ich das Skript über den Webserver starte.
 
Zurück
Oben