php env-Variable

Diskutiere mit über: php env-Variable im Mac OS X Forum

  1. eyz

    eyz Thread Starter MacUser Mitglied

    Beiträge:
    176
    Zustimmungen:
    0
    Registriert seit:
    29.12.2003
    Hallo

    Also ich hab PHP5.0.3 installiert (/usr/local/php5) und PHP4.3.2 (/usr/local/php).

    Wenn ich jetzt php -v in das Terminal tippe, kommt PHP 4.3.2 (cli). Jedoch sagt mir phpinfo(), dass die Version 5.0.3 am laufen ist.

    Wie kann ich die ?Env-Variable? im Terminal aktualisieren?

    mfg eyz
     
  2. wegus

    wegus MacUser Mitglied

    Beiträge:
    15.034
    Zustimmungen:
    1.314
    Registriert seit:
    13.09.2004
    Ich nehme an Du möchtest PHP für Skripte im Terminal verwenden?
    Für Apache ist das nämlich gar nicht von Belang! Für Terminal gilt die PATH-Variable wird nach Programmen abgesucht. Sprich alle dort angegebenen Verzeichnisse in genau der Reihenfolge. Du könntest also entweder den Pfad zu Deinem PHP in der PATh-Variablen vor dem zum Default-PHP legen oder Du gehst einen praktikableren Weg:

    In Shellskripten muß ohnehin der Interpreter angegeben werden. Beginnst Du die erste Zeile mit einem sogenannten Bang und gibtst den Interpreter direkt mit absolutem Pfad an:

    PHP:
    #! /usr/local/php5/bin/php
    kannst Du Dein Skript ( sofern es chmod 755 ist) in der shell einfach per

    PHP:
    ./skriptname
    starten. Das OS schaut dann in der ersten Zeile nach dem Interpreter und nähme dann ja automatisch PHP5. Wie gesagt, für Apache ist das unnötig, weil in der httpd.conf bereits der Pfad zur zu verwendenden PHP-Version eingetragen ist. Die andere Version liegt dann halt brach.
     
  3. eyz

    eyz Thread Starter MacUser Mitglied

    Beiträge:
    176
    Zustimmungen:
    0
    Registriert seit:
    29.12.2003
    Danke für die Antwort!

    Wie kann ich die PATH-Variable verändern?

    Denn, um zb.
    curl http://go-pear.org/ | sudo php
    auszuführen und damit pear zu installieren ist es nötig, dass die PATH-Variable stimmt.
     
  4. wegus

    wegus MacUser Mitglied

    Beiträge:
    15.034
    Zustimmungen:
    1.314
    Registriert seit:
    13.09.2004
    die PATH-Variable wird in /etc/profile definiert.

    ABER VORSICHT: Das System sucht damit ebenfalls seine Befehle!!!

    Du solltest also keinesfalls vorhandene Pfadangaben entfernen. Lediglich den Pfad zu PHP5 soweit nach vorne ziehen wie nötig. Ein Backup vor der Änderung ist also Pflicht!
    Für das Ändern der Datei mußt Du nat. root-Rechte haben , ein sudo sh ist also nötig!
     
  5. SysAdm

    SysAdm MacUser Mitglied

    Beiträge:
    408
    Zustimmungen:
    112
    Registriert seit:
    29.04.2004
    Ist vielleicht besser, sich im $HOME eine Datei .bashrc anzulegen und dort

    export PATH=$PATH":/usr/local/php5"

    reinzuschreiben.

    /usr/local/php5 -> ggf. ersetzen durch Pfad zur PHP5-Binary
     
  6. eyz

    eyz Thread Starter MacUser Mitglied

    Beiträge:
    176
    Zustimmungen:
    0
    Registriert seit:
    29.12.2003
    Code:
    eyzns-Computer:/etc eyzn$ cat /etc/profile
    # System-wide .profile for sh(1)
    
    PATH="/bin:/sbin:/usr/bin:/usr/sbin"
    export PATH
    
    [ -r /etc/bashrc ] && source /etc/bashrc
    ## setloginpath added /usr/local/bin start at Sat Jan 29 09:32:15 CET 2005
    ## Do not remove the previous line
    if [ `whoami` != "root" ]
    then
      PATH="$PATH:/usr/local/bin"
      export PATH
    fi
    ## Do not remove the next line
    ## setloginpath added /usr/local/bin end at Sat Jan 29 09:32:15 CET 2005
    ## TeX modifications start at Sat Jan 29 10:45:36 CET 2005
    ## Do not remove the previous line
    if [ `whoami` != "root" ]
    then
      PATH="$PATH:/usr/local/teTeX/bin/powerpc-apple-darwin-current"
      export PATH
    fi
    ## Do not remove the next line
    ## TeX modifications end at Sat Jan 29 10:45:36 CET 2005
    Code:
    eyzns-Computer:/etc eyzn$ cat ~/.bashrc 
    export PATH=/usr/local/php5:/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-current:/usr/X11R6/bin':/usr/local/php5'
    In der ~/.bashrc hab ich voran "/usr/local/php5" gesetzt, jedoch hat es nicht die gewünschte Auswirkungen :/

    Code:
    eyzns-Computer:/etc eyzn$ php -v
    PHP 4.3.2 (cli) (built: Feb 16 2004 19:54:11)
    Copyright (c) 1997-2003 The PHP Group
    Zend Engine v1.3.0, Copyright (c) 1998-2003 Zend Technologies
     
  7. SysAdm

    SysAdm MacUser Mitglied

    Beiträge:
    408
    Zustimmungen:
    112
    Registriert seit:
    29.04.2004
    Hi,

    prüfe mal bitte, wo genau Deine PHP5-Binary liegt (z.B. /usr/local/php5/bin/)
     
  8. eyz

    eyz Thread Starter MacUser Mitglied

    Beiträge:
    176
    Zustimmungen:
    0
    Registriert seit:
    29.12.2003
    Code:
    eyzns-Computer:~ eyzn$ whereis php
    /usr/bin/php
    
    eyzns-Computer:~ eyzn$ ls -l /usr/local/php5/bin | grep php
    -rwxr-xr-x  1 root  staff  10217996 18 Dec  2004 php
    -rwxr-xr-x  1 root  staff      1479 18 Dec  2004 php-config
    -rwxr-xr-x  1 root  staff       593 18 Dec  2004 phpextdist
    -rwxr-xr-x  1 root  staff      3092 18 Dec  2004 phpize
     
  9. SysAdm

    SysAdm MacUser Mitglied

    Beiträge:
    408
    Zustimmungen:
    112
    Registriert seit:
    29.04.2004
    Na also, so muss also der Pfad in Deiner $PATH

    /usr/local/php5/bin

    lauten
     
  10. eyz

    eyz Thread Starter MacUser Mitglied

    Beiträge:
    176
    Zustimmungen:
    0
    Registriert seit:
    29.12.2003
    Code:
    eyzns-Computer:~ eyzn$ cat /etc/profile
    # System-wide .profile for sh(1)
    
    PATH="/bin:/sbin:/usr/local/php5/bin:/usr/bin:/usr/sbin"
    export PATH
    
    [ -r /etc/bashrc ] && source /etc/bashrc
    ## setloginpath added /usr/local/bin start at Sat Jan 29 09:32:15 CET 2005
    ## Do not remove the previous line
    if [ `whoami`!= "root" ]
      PATH="$PATH:/usr/local/bin"
      export PATH
    fi
    ## Do not remove the next line
    ## setloginpath added /usr/local/bin end at Sat Jan 29 09:32:15 CET 2005
    ## TeX modifications start at Sat Jan 29 10:45:36 CET 2005
    ## Do not remove the previous line
    if [ `whoami` != "root" ]
    then
      PATH="$PATH:/usr/local/teTeX/bin/powerpc-apple-darwin-current"
      export PATH
    fi
    ## Do not remove the next line
    ## TeX modifications end at Sat Jan 29 10:45:36 CET 2005
    Code:
    eyzns-Computer:~ eyzn$ cat ~/.bashrc 
    export PATH=/usr/local/php5/bin:/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-current:/usr/X11R6/bin':/usr/local/php5'
    Code:
    eyzns-Computer:~ eyzn$ echo $PATH
    /sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/teTeX/bin/powerpc-apple-darwin-current:/usr/X11R6/bin
    ?! also ich hab gedacht, dass mit der /etc/profile oder eben mit der ~/.bashrc die $PATH-Variable verändert werden kann.

    Ich denke ich sollte mich bezüglich der $PATH-Variable noch etwas genauer informieren.
     
Die Seite wird geladen...
Ähnliche Themen - php env Variable Forum Datum
Quicklook Erweiterung für PHP und andere Sprachen Mac OS X 13.04.2014
Mac OS X Server , hat mysql und php? Mac OS X 07.10.2013
Php Server: "Forbidden" Mac OS X 17.07.2008
PHP Dateien werden nicht angezeigt Mac OS X 30.03.2006
PHP Datein werden automatisch in Aliase umgewandelt Mac OS X 26.03.2006

Diese Seite empfehlen

Benutzerdefinierte Suche