PHP: Unterschied zwischen den Versionen
Root (Diskussion | Beiträge) (→PHP7) |
Root (Diskussion | Beiträge) |
||
(11 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 33: | Zeile 33: | ||
* openSUSE 13.1 64 Bit installiert (als VM unter VirtualBox, Host ist openSUSE 42.1) | * openSUSE 13.1 64 Bit installiert (als VM unter VirtualBox, Host ist openSUSE 42.1) | ||
* incl. Commando-Zeilen Tools, C++ Entwicklung, Webserver | * incl. Commando-Zeilen Tools, C++ Entwicklung, Webserver | ||
* Mich über PHP7 beim OpenSUSE Build Serivce Informiert | |||
** https://build.opensuse.org/package/show/devel:languages:php:php7/php7 | |||
* im yast folgendes Repository hinzugefügt | * im yast folgendes Repository hinzugefügt | ||
** <code>http://download.opensuse.org/repositories/devel:/languages:/php:/php7/openSUSE_13.1</code> | ** <code>http://download.opensuse.org/repositories/devel:/languages:/php:/php7/openSUSE_13.1</code> | ||
Zeile 38: | Zeile 40: | ||
* phpinfo(); lieferte eigentlich direkt den Erfolg | * phpinfo(); lieferte eigentlich direkt den Erfolg | ||
* weitere Module installiert, mcrypt, soap, ... | * weitere Module installiert, mcrypt, soap, ... | ||
=== php7-interbase === | |||
die interbase Erweiterung war nicht dabei, also per Hand | die interbase Erweiterung war nicht dabei, also per Hand | ||
* den interbase-classic Server installiert, ev. auch "-devel" Pakete nötig weis nicht mehr | |||
* das Quelltext-Paket 'php-7.0.0RC7.tar.gz' von php.net geladen | * das Quelltext-Paket 'php-7.0.0RC7.tar.gz' von php.net geladen | ||
* irgendwie den php das firebird in /opt/firebird installiert ist. Die Header-Dateien werden dort im ./include Verzeichnis gesucht. | * irgendwie den php das firebird in /opt/firebird installiert ist. Die Header-Dateien werden dort im ./include Verzeichnis gesucht. | ||
Zeile 64: | Zeile 69: | ||
* Jetzt muss apache2 noch merken das ein neues Modul gewünscht ist | * Jetzt muss apache2 noch merken das ein neues Modul gewünscht ist | ||
** systemctl restart apache2 | ** systemctl restart apache2 | ||
=== php7-memcached === | |||
* wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip | |||
* ... in ein neues Verzeichnis auspacken ... | |||
* phpize | |||
* ./configure | |||
* make | |||
* make install | |||
* joe /etc/php7/conf.d/memcached.ini | |||
extension=memcached.so | |||
* Jetzt muss apache2 noch merken das ein neues Modul gewünscht ist | |||
** systemctl restart apache2 | |||
=== php7-xdebug === | |||
* xdebug habe ich direkt von der xdebug Homepage geladen, da es in PHP 7.0.1 nicht mit dabei war | |||
* ich habe es ins ./ext Verzeichnis eines kompletten php-7.0.1.tar.gz entpackt als wäre es eine mitgelieferte Extension | |||
* phpize, ./configure, make, make install hat auch funktioniert | |||
* Im /etc/php7/conf.d habe ich xdebug.ini angelegt. Es hat nicht so den Standard-Inhalt da es eine "Zend" Extension ist! | |||
zend_extension=xdebug.so | |||
[xdebug] | |||
xdebug.remote_enable=On | |||
xdebug.remote_host=khao | |||
xdebug.idekey=netbeans-xdebug | |||
* Meine IDE läuft auf dem Rechner KHAO (Windows) und mein 13.1er hat den Hostname Virt42 | |||
=== Status vom 23.11.2015 === | |||
* Shop läuft bei mäsiger Performance | |||
* Riessen Bug in ibase.php gefunden, es wurden zig Interbase Connections pro Seitenaufruf neu geöffnet | |||
* Der Player sollte in das Header-Template des WebShops dort wäre er passender | |||
* Die Static-Klassen sollten durchgängig programmiert werden | |||
=== Status vom 25.11.2015 === | |||
* Modul "memcached" lässt sich nun compilieren | |||
=== Status vom 03.12.2015 === | |||
* keine offenen Punkte mehr | |||
* Optimierungen an der CodeBasis vorgenommen | |||
=== Status vom 07.12.2015 === | |||
* PHP 7.0.0 installiert |
Aktuelle Version vom 5. Januar 2016, 15:09 Uhr
PHP ist eine Scriptsprache und läuft auf dem gleichen Host wie der Apache Webserver ab. PHP ist eine Entwicklung der PHP Open Source Bewegung (http://php.net/). Sie wird vor allem im InterNet eingesetzt sobald statischer HTML-Inhalt nicht mehr ausreicht, und Ablauflogik benötigt wird. Dabei bittet der Apache das PHP Modul das entsprechende PHP Script (=Textdatei) mit den übertragenen Parametern auszuführen. Das Ergebnis des PHP Moduls wird an den Client rückübertragen.
PHP IDE
Zur Ansicht der PHP - Scripte (=Text Dateien) eignet sich DevPHP der Open Source Bewegung:
http://sourceforge.net/projects/devphp
devPHP wird sichlich in Kürze die PHP für Eclipse abgelöst werden (Stand 2006).
PHP auf dem OrgaMon Server
Der TWebShop des OrgaMons läuft auf dem OrgaMon - Server. Er ist in PHP 5.x implementiert. Auch die Internet-Ablagen verwenden ein PHP Script, um die abgelegten ZIP-Dateien aufzulisten. Dazu muss auf dem Server Apache2 und PHP5 installiert sein.
zusätzliche PHP-Extensions
zypper install php5-mcrypt zypper install php5-soap
Session Verzeichnis
Verzeichnis namens "Sess" in C:\Programme\Apache Group\Apache\" oder im selben Verzeichnis wie "DocumentRoot" anlegen. In der Datei "php.ini" den Eintrag "session.save_path = " auf im ersten Falle
session.save_path = C:/Programme/Apache Group/Apache/Sess abändern.
PHP7
ich habe PHP7 RC6 folgendermasen zum Laufen gebracht.
- openSUSE 13.1 64 Bit installiert (als VM unter VirtualBox, Host ist openSUSE 42.1)
- incl. Commando-Zeilen Tools, C++ Entwicklung, Webserver
- Mich über PHP7 beim OpenSUSE Build Serivce Informiert
- im yast folgendes Repository hinzugefügt
- im yast php7 nun installiert
- phpinfo(); lieferte eigentlich direkt den Erfolg
- weitere Module installiert, mcrypt, soap, ...
php7-interbase
die interbase Erweiterung war nicht dabei, also per Hand
- den interbase-classic Server installiert, ev. auch "-devel" Pakete nötig weis nicht mehr
- das Quelltext-Paket 'php-7.0.0RC7.tar.gz' von php.net geladen
- irgendwie den php das firebird in /opt/firebird installiert ist. Die Header-Dateien werden dort im ./include Verzeichnis gesucht.
- Diese waren aber bei mir im /urs/include/firebird, ok also einen Link erstellt:
- md /opt/firebird
- ln -s /usr/include/firebird /opt/firebird/include
- Nun ins ./ext/interbase Verzeichnis wechseln und dort
- phpize
- ./configure
- make
- make install
die interbase.so steht jetzt zur VErfügung, wird aber noch nicht geladen
- joe /etc/php7/conf.d/interbase.ini
extension=interbase.so [Interbase] ibase.dateformat=%m.%d.%Y ibase.timestampformat=%m.%d.%Y %H:%M:%S
- Jetzt muss apache2 noch merken das ein neues Modul gewünscht ist
- systemctl restart apache2
php7-memcached
- wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip
- ... in ein neues Verzeichnis auspacken ...
- phpize
- ./configure
- make
- make install
- joe /etc/php7/conf.d/memcached.ini
extension=memcached.so
- Jetzt muss apache2 noch merken das ein neues Modul gewünscht ist
- systemctl restart apache2
php7-xdebug
- xdebug habe ich direkt von der xdebug Homepage geladen, da es in PHP 7.0.1 nicht mit dabei war
- ich habe es ins ./ext Verzeichnis eines kompletten php-7.0.1.tar.gz entpackt als wäre es eine mitgelieferte Extension
- phpize, ./configure, make, make install hat auch funktioniert
- Im /etc/php7/conf.d habe ich xdebug.ini angelegt. Es hat nicht so den Standard-Inhalt da es eine "Zend" Extension ist!
zend_extension=xdebug.so [xdebug] xdebug.remote_enable=On xdebug.remote_host=khao xdebug.idekey=netbeans-xdebug
- Meine IDE läuft auf dem Rechner KHAO (Windows) und mein 13.1er hat den Hostname Virt42
Status vom 23.11.2015
- Shop läuft bei mäsiger Performance
- Riessen Bug in ibase.php gefunden, es wurden zig Interbase Connections pro Seitenaufruf neu geöffnet
- Der Player sollte in das Header-Template des WebShops dort wäre er passender
- Die Static-Klassen sollten durchgängig programmiert werden
Status vom 25.11.2015
- Modul "memcached" lässt sich nun compilieren
Status vom 03.12.2015
- keine offenen Punkte mehr
- Optimierungen an der CodeBasis vorgenommen
Status vom 07.12.2015
- PHP 7.0.0 installiert