Archiv der Kategorie: PHP

PHP

PHP_Codesniffer: Migrationsscript PHP 5.3/5.4

Mit PHP_Codesniffer von squizlabs kann auch die Migration auf PHP 5.4 (und 5.3) geprüft werden. Dazu wird eine Erweiterung benötigt, die unter folgender Url zu finden ist:

PHP 5.4 compatibility checks using PHP_CodeSniffer

Über git folgenden Ordner beziehen:

git clone git://github.com/wimg/PHPCompat_CodeSniffer.git PHPCompatibility

Diesen verschieben in:

mv PHPCompatibility ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/

Aufruf über:

phpcs --standard=PHPCompatibility [zu-prüfendes-Verzeichnis]

Nicht vergessen in der php.ini (Apache2 und CLI) die date.timezone Variable auf zB „Europe/Berlin“ zu setzen, sonst gibt jede Menge Error mit „Default timezone is required since PHP 5.4“.

PHPUnit: Installation via Composer globally

// Composer installieren

sudo apt-get update && sudo apt-get install curl
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

// Eintrag in ~/.bashrc:

export PATH=~/.composer/vendor/bin:$PATH

// PHP Unit

composer global require "phpunit/phpunit=4.3.*"
composer global require "phpunit/dbunit=1.*"
composer global require "phpunit/phpunit-selenium=1.*"
composer global --dev require "phpunit/php-invoker=*"

// PHP_Depend

composer global –dev require "pdepend/pdepend=*"

// PHP Mess Detector

composer global require "phpmd/phpmd"

// PHP Codesniffer

composer global require “squizlabs/php_codesniffer=*”

// PHP Copy/Paste Detector

composer global require "sebastian/phpcpd=*"

// PHP LOC Lines of code

composer global require "phploc/phploc=*"

// PHP Documentor (Achtung: Tonnenweise Abhängigkeiten, kann Github-Login erfordern, wegen Download-Limit)

composer global require "phpdocumentor/phpdocumentor"

// PHP CodeBrowser

composer global require "mayflower/php-codebrowser=~1.1"

PHP Packet Manager Composer installieren

Installieren der composer.phar Datei im Projet-Root:

curl -s http://getcomposer.org/installer | php

Erstellen der Konfigurationsdatei composer.json (hier für Twig):

{
    "require": {
        "twig/twig": "1.*"
    }
}

Composer starten:

php composer.phar install

Composer legt ein Verzeichnis „vendor“ an. Dort hinein wird der Ordner „composer“ (für die composer-Dateien) und „twig“ (für die Twig-Dateien) installiert.
Es gibt eine Autoload-Datei (vendor/autoload.php), die für alle über Composer installierten pakete ein Autoload zur Verfügung stellt.

Nach Änderungen an der composer.json-Datei muss Composer ein Update machen:

php composer.phar update

Neue hinzugefügte Pakete werden dann installiert und ausgetragene Pakete werden de-installiert.