Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM

Autor wpisu: batman, dodany: 30.09.2013 07:00, tagi: skrypty

Jakiś czas temu szukałem aplikacji, która będzie w stanie nagrać wideo z pulpitu użytkownika (oczywiście za jego wiedzą i zgodą). Niestety żadna dostępna na rynku aplikacja nie spełniała moich wymagań (prostota obsługi, udostępnione API oraz możliwość dowolnego modyfikowania wyglądu). Niepowodzeniem (…)

Read the rest of this entry »

Autor wpisu: Jacek Skirzyński, dodany: 29.09.2013 18:06, tagi: php

Często jest tak, że aplikacja korzysta z jakichś bibliotek, modułów lub zakłada pewne opcje konfiguracyjne. Przykładem może być sprawdzanie MIME pliku z wykorzystaniem modułu Fileinfo. PHP w wersjach przeznaczonych na Windowsa wymaga ręcznej edycji php.ini i włączenia wczytywania tego modułu. Efekt jest taki, że w środowisku *nix wszystko działa, a po uruchomieniu tego samego kodu na Windowsie jest problem…

Mając chwilę wolnego czasu napisałem kawałek kodu, który pomaga znajdować tego typu problemy z zależnościami, konfiguracją przed uruchomieniem docelowej aplikacji – mowa o PHP Applications Requirements Tester (PART). Projekt znajduje się na moim koncie w serwisie GitHub.

Użycie jest według mnie bardzo proste – przykładowy plik z testami znajuje się również na GitHubie. Wystarczy utworzyć nowy plik PHP, dołączyć plik part.php, utworzyć obiekt PART i wywoływać na nim odpowiednie metody z testami środowiska. Taki zestaw umieszcza się w miejscu gdzie ma być aplikacja i uruchamiamy – w przeglądarce lub z shella. Mogą wystąpić różnice w konfiguracji między środowiskiem shell i webowym (ponieważ mają osobne pliki php.ini, więc najlepiej uruchamiać test z tego środowiska w którym będzie działała docelowa aplikacja.

Poniżej źródło przykładowego zbioru testów i wyniki:

<?php

require_once 'part.php';

$obiekt = new PART();
$obiekt->checkConfigHasValue('display_errors', 0)
    ->checkPDO()
    ->checkPDODriver('mysql')
    ->checkPHPVersion(5.4)
    ->checkDisableMagicQuotes()
    ->checkDefaultTimezone('Europe/Warsaw')
    ->checkNotWindowsServer();

Wynik konsolowy:

PHP Applications Requirements Tester - Report

Warning: The CLI environment may be different from web environment
Test name                                Result     Expected   Environment
================================================================================
Config [display_errors]                  OK         0                    
Extension loaded [PDO]                   OK                              
PDO driver [mysql]                       OK                              
PHP version                              OK         5.4 [>=]   5.4.9-4ubuntu2.3
Config [magic_quotes_gpc]                OK         0                    
Config [magic_quotes_runtime]            OK         0                    
Config [magic_quotes_sybase]             OK         0                    
Default timezone                         failure    Europe/Warsaw Europe/Berlin
Not Windows OS serwer                    OK                              

Warning: The CLI environment may be different from web environment

Wynik HTML: PART wynik

Na załączonych raportach widać, różnicę pomiędzy uruchomieniem testu z konsoli i przeglądarki – w pierwszym wypadku display_errors jest wyłączone zgodnie z oczekiwaniami, w drugim przeciwnie.

Autor wpisu: bastard13, dodany: 28.09.2013 14:33, tagi: design

Kilka dni temu rozmawiałem z członkiem mojego zespołu na temat niektórych defectów, które zgłaszamy.Stwierdził on, że o ile zazwyczaj nie ma się nad czym rozwodzić i kłócić, to zastanawia się, czy w niektórych przypadkach nie jest to zwyczajny przerost formy nad treścią (nie cytuję, więć z góry przepraszam za wszelkie odstępstwa). O co mianowicie chodziło?Zastanawiał się czy rzeczywiście zawsze warto inwestować czas w poprawianie kawałka kodu tak, aby był jeszcze lepszy, skoro spełnia on swoje założenia i wcale zły nie jest.Czytaj więcej »

Autor wpisu: bastard13, dodany: 28.09.2013 14:07, tagi: design

świętymi bądźmy... ale trzeba znać umiar

Ostatnimi czasy zdarzało mi się trafiać w review kodu na zażarte dyskusje na temat pewnego jego fragmentu. Czasami rozmowy tam prowadzone zmieniały się w dialogi nie za pośrednictwem komentarzy i klawiatur, a werbalne.Gdy się wsłuchiwałem (bądź wczytywałem) w nie, ciężko było trzymać stronę któregokolwiek z dyskutantów, a to dlatego, że moim zdaniem każdy z nich miał rację, a rozmowa sprowadzała się do kwestii estetycznych i osobistych preferencji aniżeli do "obrony jakości kodu" przed "nieodpowiednimi" linijkami. No i tak sobie te dyskusje trwały do momentu, gdy w końcu obaj rozmówcy decydowali się na skorzystanie z "telefonu do przyjaciela", co sprowadzało się do skierowania spojrzeń w kierunku najbliższego programisty i zadania mu jakże istotnego pytania - "A Ty co o tym sądzisz?". Zdarzało się tak, że owym programistą byłem ja. I cóż mogłem odpowiedzieć?Czytaj więcej »

Autor wpisu: JoShiMa, dodany: 26.09.2013 22:47, tagi: framework, php, skrypty

Miało być prosto. Dokumentacja Yii przekonuje, że wystarczy skopiować pliki na serwer, uruchomić jeden z nich za pomocą wiersza poleceń, podając odpowiednie parametry i już mamy szkielet aplikacji. Kuszące, bo w Kohana trzeba strukturę katalogów aplikacji sobie ręcznie stworzyć. Strona, którą muszę uruchomić ma powstać na serwerze hostowanym przez AZ w niezbyt wypasionej opcji. Sęk [...] Related posts:
  1. Yii – początek

Autor wpisu: JoShiMa, dodany: 26.09.2013 21:40, tagi: framework, php

Jakiś czas temu, przyszło mi zapoznać się z frameworkiem Yii. Własciwie to odziedziczyłam projekt i musiałam się szybko doszkolić. Konstrukcja i filozofia nieco inna niż w przypadku Kohana, ale tak na pierwszy rzut oka bardzo mi się spodobał. Szczególnie, że dokumentacja przyzwoita, nawet w języku polskim i nie miałam większych problemów ze zorientowaniem się co, [...] No related posts.

Autor wpisu: zleek, dodany: 26.09.2013 14:31, tagi: php, zend_framework

Dodawanie kolejnej wersji językowej do sklepu opartego o Magento przedstawię na przykładzie wersji angielskiej. Zakładam, że mamy dostępną podstawową instancję sklepu w języku polskim ze zdefiniowaną główną kategorią sklepu. Pierwszym krokiem jest zalogowanie się do Panelu administracyjnego. Z górnego menu wybieramy “System > Manage stores” Klikamy przycisk “Create Website” Wprowadzamy nazwę strony np. “Angielski”, przypisujemy […]
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.