Angular, AWS und Symfony Freelancer

Kategorie: PHP

  • Profiling mit XDebug und Webgrind

    Wenn die Performance einer Webseite nachgibt, stellt man sich oft die Frage, an welche Funktion/Modul liegt der Performanceverlust? Die Lösung ist das Profiling einer Webseite. Profiling beschäftigt sich der Analyse der Funktionsaufrufe eine Webseite. Es kann dadurch analysiert werden, welche Teile sehr lange brauchen oder welche Funtionen doppelt aufgerufen werden. Profiling sollte nicht auf einem…

  • Installieren von XDebug unter Netbeans

    XDebug ermöglicht es ein Programm zur Laufzeit zu debuggen und Step by Step. Dazu sollte als erstes das folgende Tool verwendet werden für die Installation um die richtige Version zu installieren: XDebug Installations Hilfe Tool Zur Kontrolle kann nach der Installation das Tool noch mal verwendet werden und es sollte unter Xdebug installed: 2.x anzeigen…

  • richtige Rechte für Dateien zum Speichern von Skript Input

    Wenn man schreibenden Zugriff auf Dateien wie z.B. .txt oder .dat Dateien aus einem Skript heraus hat, sollten diese vom Skript angelegt worden sein, nicht manuell bei FTP. Damit ist sichergestellt , dass der Besitzer kein FTP Account ist. die Schreibrechte 644 haben, damit sie nicht von einem anderen Account überschrieben werden können oder durch…

  • PHP Konstanten ändern

    Es scheint erst einmal unsinnig zu sein, aber in machen Situationen, z.B: wenn man in ein komplettes SDK Eingreifen will ohne es zu verändern, würde man gern PHP Konstanten ändern.Möglich ist das mit dem PHP-Core nicht, aber es gibt eine PECL Extension namens runkit, damit funktioniert es. Im folgenden Beispiel habe ich versucht den Wert…

  • Amazon Product Advertising API Umstellung

    Ab Februar 2012 stellt Amazon den Support älterer Versionen Ihrer Product Advertising API ein und untersrützt nur noch das neue AWS System.Auch inhaltlich werden ein paar Änderungen vorgenommen (Quelle Amazon aws-portal.amazon.com): Associate Tag will be a required and verified input parameter in all requests to the API SellerLookup, SellerListingLookup and SellerListingSearch operations will no longer…

  • Amazon API Migration: SOAP/AIM Migration nach Amazon MWS

    Wer die Amazon API nutzt um seine Artikel zu verkaufen, der muss diese nach Amazon MWS migrieren, weil am 8. Oktober 2012 die AIM- und SOAP-Dienste heruntergefahren werden. Bis dahin gibt es eine Übergangsfrist, die gilt, wenn die API  im Zeitraum vom 9.9.2011 und 9.10.2011 benutzt wurde.

  • Zend kranuliertes Rechtesystem mit Zend_Acl und Zend_Auth

    Für das Rechtesystem in meinem Tippspiel werden die Komponenten Zend_Auth und Zend_Acl im Zendframework verwendet. Zend_Auth ist dabei für die Authentifizierung registrierter Nutzer zuständig und Zend_Acl für Verteilung und das setzen der Rechte. Es wurden drei Rollen angelegt: Guest, Member und Administrator.

  • Zend Test mit PhpUnit

    Zum Testen wurde PHPUnit verwendet als Standard-Testing-Tool für PHP und in Netbeans intergriert. Dazu wurde eine Bootstrap Datei angelegt, in der die Applikationsvariablen geladen werden (IndexControllerTest.php): class IndexControllerTest extends Zend_Test_PHPUnit_ControllerTestCase {     public function setUp()     {         $this->bootstrap = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . ‚/configs/application.ini‘);         parent::setUp();     } } Ein Test kann dan so…

  • PHP mit htaccess debuggen: Error Log

    Um die möglichen bei Usern im Betrieb  auftretenden Fehler einer Webseiten zu loggen, empfiehlt sich ein Error Log in der htaccess einzurichten außerhalb des öffentlichen Teils der Webseite. Diese muss via FTP mit Schreibrechten versehen werden. php_flag log_errors on php_value error_log /srv/www/vhosts/domain/non-public/PHP_errors.log php_flag ignore_repeated_errors on php_flag ignore_repeated_source on php_value error_reporting 1 Dabei werden keine sich…

  • PHP 2-Spalten Layout eleganter Code

    Wenn man performant und elegant ein belibeges 2 spaltiges Tabellen HTML  Layout generieren will ohne Tabellen, kann man z.B: so tun: $count = count($array); for($i = 0; $i < $count; $i++) {    $style = !$i%2 ? „left“ : „right“;    $html .=  „<div class=’$style‘>{$array[$i]}</div>“; } und mit CSS ausrichten: #container{width:600px} .left {width:200px} .right {width:400px}