Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2011/07/11/Zend_Framework_1.11.8'

    Zend Framework 1.11.8

    Dodany: lipiec 11, 2011, 11:12am CEST przez matipl

    Zend FrameworkBardzo lubię wprowadzony w zeszłym roku Bug Hunt Days organizowany przez zespół ZF co miesiąc.

    Dzięki polowaniu na błędy 7 lipca ukazała się kolejna wersja Zend Framework. Tym razem naprawiono prawie 40 błędów w frameworku.

    Czy jest sens być na bieżąco? Oczywiście, aktualizacje w ramach tej samej gałęzi są bardziej ważne, niż aktualizacja wersji głównej.

    W Zend Framework 1.11.8 odkryto np. że nie zawsze poprawnie działa Zend_Session::regenerateId. Poprawiono również problem w Zend_Validate, który zwracał fałsz gdy adres e-mail kończył się kropką (mało spotykane przypadek, ale jednak).

    Changelog 1.11.8

    Download ZF 1.11.8

  • Permalink for 'Mateusz_Kami__ski/2011/05/09/Zend_Framework_1.11.6'

    Zend Framework 1.11.6

    Dodany: maj 9, 2011, 9:40am CEST przez matipl

    Zend FrameworkPrzed weekendem zespół Zend Framework wydaÅ‚ kolejny zestaw Å‚at dla frameworka – 1.11.6 oraz kilka krytycznych z linii 1.10 (.9). Kolejny efekt polowania na błędy…

    Najpoważniejszy poprawiony błąd to błąd bezpieczeństwa, który dotyczy MySQL PDO w Zend_DB. Błąd pojawił się wraz z PHP 5.3.6+ i umożliwiał SQL Injection poprzez przekazywanie dowolnych znaków do DSN (więcej informacji).

    Poza tym z ważniejszych problemów naprawiono:

    • Zend_Config_Yaml (nie ignorowano komentarzy)
    • błąd w routowaniu, gdy URL posiadaÅ‚ zakodowany slash
    • helper Redirector posiadaÅ‚ hardkodowane parametry akcja/moduÅ‚/kontroler
    • insert() nie zwracał last_insert_id w przypadku pustego istniejÄ…cego klucza w insert data
    • uporano siÄ™ z brakami dot. IPv6 (np. w Zend_Validate_Hostname).

    I wiele innych. W sumie w Zend Framework 1.11.6 naprawiono ponad 60 błędów. Dla ciekawskich pełny changelog.

  • Permalink for 'Mateusz_Kami__ski/2011/02/08/Zend_Framework___obs%c5%82uga_wielu_j%c4%99zyk%c3%b3w'

    Zend Framework ? obsługa wielu języków

    Dodany: luty 8, 2011, 9:01am CET przez matipl

    Zend Framework Wstępnie chciałem napisać o lokalizacji, aby zaprezentować Wam jak można wykorzystać application.ini zamiast tworzyć własne zasoby (resource). Ale z drugiej strony może nie każdy wie jakie to proste w dzisiejszych czasach zrobić serwis wielojęzyczny z tłumaczeniem nie tylko statycznych napisów, ale również nawigacji czy lokalizacją kwot.

    Do tłumaczeń korzystam z gettext (pliki .mo i .po). Moje pliki językowe znajdują się w project/languages i wygląda to tak:

    matipl@host:~/project/languages$ ls
    en_GB.mo  en_GB.po  pl_PL.mo  pl_PL.po
    

    Gdy mamy stworzone własne tłumaczenia pora na skonfigurowanie zasobu translate w application.ini:

    resources.translate.registry_key   = "Zend_Translate"
    resources.translate.adapter        = "gettext"
    resources.translate.content        = APPLICATION_PATH "/../languages/"
    resources.translate.options.scan    = "filename"
    resources.translate.disableNotices = false
    resources.translate.options.logUntranslated = false
    resources.translate.locale        = "pl_PL"
    

    W ten oto sposób możemy już korzystać z plików lokalizacyjnych opartych o Zend_Translate (skonfigurowany zasób znajduje siÄ™ w Zend_Registry::get(‘Zend_Translate’)). Niestety nie wie on z jakiej wersji jÄ™zykowej (pl czy en) chcemy skorzystać.

    W tym celu stworzyłem plugin Zextend_Controller_Plugin_Locale, który pobiera wybrany (lub domyślny) język użytkownika i konfiguruje Zend_Translate. Dodatkowo mówimy widokowi i nawigacji, że ma się wspierać przez Zend_Translate z tym konkretnym językiem, który skonfigurowaliśmy.

    class Zextend_Controller_Plugin_Locale extends Zend_Controller_Plugin_Abstract
    {
    
        public function routeShutdown(Zend_Controller_Request_Abstract $request)
        {
            $view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
            $locale = new Zend_Locale(Zextend_Lang::getActiveLang());
            Zend_Registry::set('Zend_Locale', $locale);
    
            $translate = Zend_Registry::get('Zend_Translate');
            $translate->setLocale($locale);
    
            $view->getHelper('translate')->setTranslator($translate);
            $view->navigation()->setTranslator($translate);
    
            Zend_Form::setDefaultTranslator($translate);
    
            Zend_Registry::set('Zend_Translate', $translate);
    
        }
    
    }
    

    Na koniec wystarczy włączyć nasz plugin w application.ini:

    resources.frontController.plugins.locale = "Zextend_Controller_Plugin_Locale"
    

    Teraz możemy już swobodnie korzystać z tłumaczeń na naszej stronie, np. w widoku wywołując:

    <h2><?php echo $this->translate('Contact') ?></h2>
    

    Dla sÅ‚owa „Contact” musimy mieć oczywiÅ›cie odpowiedni wpis w plikach *.po. Dla wersji PL:

    msgid "Contact"
    msgstr "Kontakt"
    

    Po stworzeniu tłumaczenia pamiętajmy o wygenerowaniu pliku .mo komendą: msgfmt -o pl_PL.mo pl_PL.po.

    Na koniec dodam, że w danych czasach sporo rzeczy robiłem poza application.ini. Chociażby przeciążałem zasób Db, aby wprowadzić SET NAMES UTF8, czy też w index.php wpisywało się dyrektywy PHP. A obecnie?

    resources.db.adapter          =  "pdo_mysql"
    resources.db.params.host      =  "db-1.project.pl"
    resources.db.params.username  =  "project"
    resource.db.params.password    = 'password'
    resources.db.params.dbname    =  "project"
    resources.db.isDefaultTableAdapter = true
    resources.db.params.driver_options.1002 = "SET NAMES UTF8;"
    
    phpSettings.display_startup_errors = 0
    phpSettings.display_errors = 0
    
  • Permalink for 'Mateusz_Kami__ski/2011/02/06/Zend_Framework___wersja_mobilna'

    Zend Framework ? wersja mobilna

    Dodany: luty 6, 2011, 1:26pm CET przez matipl

    Zend FrameworkW październiku 2010 roku wspominałem Wam, że wraz z pojawieniem się Zend Frameworka w wersji 1.11.0 ułatwiono nam dostosowanie aplikacji opartej o ZF dla moblinych przeglądarek.

    Dzięki pomocy Raphaela w frameworku pojawiły się m.in. Zend_Http_UserAgent oraz Zend_View_Helper_UserAgent. Dzisiaj chciałbym szybko Wam pokazać jak w łatwy sposób wykryć czy mamy doczynienia z mobilną przeglądarką (zbliża się wersja bilancio dla mobilnych).

    WURFL, czyli powtarzamy kroki z manuala

    Zasób UserAgent korzysta z zewn. biblioteki – WURFL (Wireless Universal Resource File). ÅšciÄ…gamy wersjÄ™ 1.1 i rozpakowujemy w dowolnym miejscu. W naszej aplikacji tworzymy /library/wurfl-php-1.1 i kopiujemy tam katalog WURFL (reszty ze Å›ciÄ…gniÄ™tej paczki tutaj nie potrzebujemy).

    Aby zakończyć ten krok musimy jeszcze skopiować plik z informacjami o urządzeniach mobilnych. Plik wurfl-latest.zip znajduje się w paczce, w ścieżce tests/resources/. Tworzymy katalog w naszej aplikacji /data/wurfl oraz /data/wurfl/cache (w tym miejscu będzie przechowywał zawartość pliku zip). Do /data/wurfl kopiujemy plik wurfl-latest.zip (kopiujemy również web_browsers_patch.xml). W skrócie (project to nazwa naszego projektu ZF):

    
    wget "http://downloads.sourceforge.net/project/wurfl/WURFL%20PHP/1.1/wurfl-php-1.1.tar.gz?r=&amp;ts=1296984042&amp;use_mirror=sunet" -O wurfl-php-1.1.tar.gz
    
    tar -xvf wurfl-php-1.1.tar.gz
    
    mkdir project/library/wurfl-php-1.1
    
    mkdir project/data
    
    mkdir project/data/wurfl
    
    mkdir project/data/wurfl/cache
    
    chmod a+w project/data/wurfl
    
    cp -R wurfl-php-1.1/WURFL project/library/wurfl-php-1.1/
    
    cp wurfl-php-1.1/tests/resources/wurfl-latest.zip project/data/wurfl
    
    cp wurfl-php-1.1/tests/resources/web_browsers_patch.xml project/data/wurfl
    
    Konfiguracja WURFL

    Pliki mamy skopiowane, skonfigurujmy teraz samego WURFL. Zróbmy to wg tutorialu:

    <?php
    $resourcesDir            = dirname(__FILE__) . '/../../data/wurfl/';
    
    $wurfl['main-file']      = $resourcesDir  . 'wurfl-latest.zip';
    $wurfl['patches']        = array($resourcesDir . 'web_browsers_patch.xml');
    
    $persistence['provider'] = 'file';
    $persistence['dir']      = $resourcesDir . '/cache/';
    
    $cache['provider']       = null;
    
    $configuration['wurfl']       = $wurfl;
    $configuration['persistence'] = $persistence;
    $configuration['cache']       = $cache;
    

    Konfiguracja chyba jest jasna? Wskazujemy głównie miejsca plików, które wcześniej kopiowaliśmy.

    Na koniec konfiguracja projektu Zend Framework. Jak ostatnio wspominaÅ‚em we wpisie Zend Framework i Symfony – subiektywnie, obecnie jesteÅ›my w stanie zrobić wiÄ™kszość w application.ini. W takim razie dodajmy do niego informacjÄ™, że chcemy skorzystać z UserAgent i powiedzmy, gdzie umieÅ›ciliÅ›my WURFL, który jest odpowiedzialny za „rozszyfrowanie” danych o urzÄ…dzeniu mobilnym:

    resources.useragent.wurflapi.wurfl_api_version = "1.1"
    resources.useragent.wurflapi.wurfl_lib_dir = APPLICATION_PATH "/../library/wurfl-php-1.1/WURFL/"
    resources.useragent.wurflapi.wurfl_config_file = APPLICATION_PATH "/configs/wurfl-config.php"
    

    W tym momencie zasób UserAgent już działa i możemy z niego korzystać.

    Plugin

    Nasza cała aplikacja ma uwzględniać urządzenia mobilne dlatego stworzymy plugin, który w przypadku wersji mobilnej zmieni nam layout na mobilny:

    class Zextend_Controller_Plugin_Mobile extends Zend_Controller_Plugin_Abstract
    {
    
        public function routeShutdown(Zend_Controller_Request_Abstract $request)
        {
            $bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
            $userAgent = $bootstrap->getResource('useragent');
            $device = $userAgent->getDevice();
            if($device->getType() == 'mobile') {
                Zend_Layout::getMvcInstance()->setLayout('mobile');
            }
        }
    }
    

    $device udostępnia nam nie tylko typ urządzenia (getType()), ale również jego szerokość ekranu (getPhysicalScreenWidth());
    W bilancio będzie to po prostu przekierowanie na osobą domenę (pobierana z application.ini z app.mobileUrl), ponieważ udostępniona funkcjonalność będzie różnić się od standardowej wersji:

    class Zextend_Controller_Plugin_Mobile extends Zend_Controller_Plugin_Abstract
    {
    
        public function routeShutdown(Zend_Controller_Request_Abstract $request)
        {
            $config = Zend_Registry::get('config');
            $bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
            $userAgent = $bootstrap->getResource('useragent');
            $device = $userAgent->getDevice();
            $mobileUrl = $config->app->mobileUrl;
            if($mobileUrl && $device->getType() == 'mobile') {
                $redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');
                $redirector->setGoToUrl($mobileUrl);
                $redirector->redirectAndExit();
            }
        }
    }
    

    Zaznaczę, że dla obsułgi wurfl-latest.zip potrzebujemy rozszerzenia ZIP w PHP. Możemy plik rozpakować, ale wtedy nie skorzystamy z cachowania.

  • Permalink for 'Mateusz_Kami__ski/2011/02/03/Symfony_i_Zend_Framework___subiektywnie'

    Symfony i Zend Framework ? subiektywnie

    Dodany: luty 3, 2011, 10:05am CET przez matipl

    Zend FrameworkPrzed majem 2010 roku w świecie PHP poruszałem się głównie z pomocą Zend Frameworka. Kilka lat wcześniej był to autorski framework (netEngine) oraz firmowe frameworki. Z perspektywy czasu uważam, że złe było rozwijanie własnych narzędzi, zamiast pomóc społeczności. Taki zbiorowy projekt jest świetny:

    • bardzo szybko rozwijany
    • zawsze znajdziesz osobÄ™, która zna framework (a Twój lub firmowy?)
    • spora baza tutoriali w Sieci
    • popularny = groźny (wykryta dziura w Australii może spowodować ciężki tydzieÅ„ w Twojej firmie)

    Od maja pracujÄ™ głównie z wykorzystaniem Symfony (1.4). Z mojego punktu widzenia przedstawia on odmienne podejÅ›cie do sprawy. W Symfony da siÄ™ sporo rzeczy ustawić z góry, dobry cmd line, a mnóstwo mamy out of box. Ale rozwijanie Symfony o wÅ‚asne dodatki czy helpery nie jest przyjemnoÅ›ciÄ…. Symfony odbieram jak takiego WordPressa – sprawdza siÄ™, ale jego kod pozostawia wiele do życzenia (przeplatanie jÄ™zyka proceduralnego z obiektowym).

    Najgorszy minus Symfony 1.4 ? Mimo, że jest długo na rynku i jest najnowszą stabilną wersją Sieć prawie o nim milczy poza oficjalną dokumentacją. Jeśli przyjdzie zmierzyć się Tobie z nietrywalnym problemem lepiej od razu przejrzeć kod źródłowy frameworka niż szukać w Google.

    Od grudnia znów pracujÄ™ z Zend Framework, przy okazji projektu bilancio. Wrażenia ogólne – bosko, w koÅ„cu czujÄ™ siÄ™ jak w domu. Mam tyle obiektów ile dusza zapragnie. A Google bardzo jest pomocne. Najgorszy byÅ‚ poczÄ…tek przy powrocie z Symfony.

    Nadal nie widzÄ™ dobrze opisanego application.ini w Sieci, a można obecnie przez niego pozbyć siÄ™ nadpisywania wiÄ™kszoÅ›ci zasobów (ach czasy ZF < 1.0). Dodatkowo wydaje mi siÄ™, że formularze w Symfony „szybciej mi szÅ‚y”. Chociaż irytujÄ…ce jest, że w wiÄ™kszoÅ›ci wypadków wypluwaÅ‚ inputy, zamiast peÅ‚nego tagu form (Å‚atwiej obudować w ZF jak siÄ™ potrafi). No i te magiczne url_for() w Symfony (w zależnoÅ›ci od parametru wywoÅ‚uje rózne inne funkcje).

    Po pierwszym tygodniu pracy z Zend Framework nie chcę się z nim znów rozstawać, Symfony to naprawdę nieprzyjemne środowisko. A przy okazji projektów ZF może w końcu zacznę dzielić się jakimiś drobnostkami z Wami. Zobaczymy czy czas pozwoli (jak widać po blogu tutejszym ostatnio mi go brak).

    PS: Przed wczoraj został opublikowany Zend Framework w wersji 1.11.3 (30 załatanych dziur).

  • Permalink for 'Mateusz_Kami__ski/2010/12/01/Zend_Framework_1.11.1_i_WordPress_3.0.2'

    Zend Framework 1.11.1 i WordPress 3.0.2

    Dodany: grudzieñ 1, 2010, 8:09am CET przez matipl

    Zend FrameworkNo proszę, mimo czarnego listopada w Polsce na sam koniec miesiąca ukazała się połatana wersja Zend Frameworka oraz WordPressa.

    Wczoraj wieczorem ukazaÅ‚a siÄ™ wersja Zend Framework 1.11.1 (changelog) zawierajÄ…ca wyłącznie Å‚aty na znalezione błędy – łącznie 80. Nowa wersja ZF rozwiÄ…zuje m.in. problem z routingiem, poprawia obsÅ‚ugÄ™ YAML, włącza obsÅ‚ugÄ™ memcached w Zend_Cache_Backend.

    Tego samego polskiego wieczoru ukazaÅ‚a sie poprawiona wersja WordPressa z linii 3.0 – WordPress 3.0.2. Tak jak w ZF skupiono siÄ™ tutaj wyłącznie na Å‚ataniu znalezionych błędów. W sumie poprawiono 10 błędów (lista zmian), w tym dość ważny – poprawienie problemu zabezpieczeÅ„, w przypadku gdy użytkownik z poziomem Autor mógÅ‚ zdobyć dostÄ™p do serwisu. Obecnie nie ma jeszcze aktualizacji dla polskiej wersji.

    Wszystkim dotychczasowym użytkownikom ZF 1.11 oraz WordPress 3.0 zalecam aktualizację.

    Aktualizacja (3 grudnia 2010)

    W Sieci pojawiÅ‚y siÄ™ już pierwsze opisy jak wykorzystać dziurÄ™ w WordPress, gdy posiadamy tylko uprawnienia autora – WordPress: Information Disclosure via SQL Injection Attack

  • Permalink for 'Mateusz_Kami__ski/2010/11/03/Zend_Framework_1.11.0_ju%c5%bc_jest_'

    Zend Framework 1.11.0 już jest!

    Dodany: listopad 3, 2010, 7:43am CET przez matipl

    Zend FrameworkBardzo szybko moje zapowiedzi z października się ziściły. Oto wczoraj wieczorem zespół Zend Frameworka wydał finalną wersję 1.11.0.

    Jak pisałem już wcześniej głowną nowością jest obsługa urządzeń mobilnych przez ZF. Jest to tak naprawdę przymiarka do tego co będziemy mogli osiągnąć (alternatywne szablony, obrazki itp.).

    W ekipie ZF pojawiło się wiele świeżości dzięki nowym osobom. I tak oto stworzono Zend_Cloud odpowiedzialne za obsługę SimpleCloud API (wsparcie dla Amazona i Windows Azure).

    Jak wspominałem w październiku w tej wersji skupiono się bardzo na bezpieczeństwie. Naprawiono wiele miejsc z możliwymi dziurami do wykorzystania (np. za pomocą Remote Timing Attack).

    Do tego dodano obsługę Dojo, SimpleDB, eBay Findings API.

    W oficjalnej wersji zawarto również obsługę dodatkowych formatów konfiguracyjnych: Yaml i JSON. Programiści Zend Framework mają w wersji 1.11 morze możliwości do wykorzystania. I to jest piękne.

    Download: Zend Framework 1.11.0

  • Permalink for 'Mateusz_Kami__ski/2010/10/15/Zend_Framework_1.11_krok_w_przysz%c5%82o%c5%9b%c4%87'

    Zend Framework 1.11 krok w przyszłość

    Dodany: pa¼dziernik 15, 2010, 12:13pm CEST przez matipl

    Zend FrameworkKto by przypuszczał, że Zend Framework 1.11 wniesie tyle świeżości.

    Wczoraj została udostępniona jako wersja BETA1 i robi spore wrażenie.

    Wsparcie dla wersji mobilnych (Mobile Support)

    Prawdziwa rewolucja. Zend Framework 1.11 posiada wsparcie dla urzÄ…dzeÅ„ mobilnych. Wszystko za sprawÄ… Raphael Carles (CTO Interakting), który napisaÅ‚ Zend_Http_UserAgent. Nowy komponent ma za zadanie wykryć User-Agent’a oraz na tej podstawie sprawdzić możliwoÅ›ci urzÄ…dzenia mobilnego. W Å‚atwy sposób można dopisać backendy dla kolejnych urzÄ…dzeÅ„.

    Dzięki wtyczce dla Zend_Application oraz Zend_View_Helper_UserAgent w łatwy sposób możemy dostosować generowane dane wyjściowe z uwzględnieniem urządzenia, dla którego serwujemy tą treść (różne layouty, obrazki itp.).

    Zend_Cloud: SimpleCloud API

    Podczas ZendCon 2009 ogłoszono prototyp SimpleCloud API. W tej wersji mamy pierwsze oficjalne wsparcie od strony Zend Frameworka zawarte w Zend_Cloud. Dzięki temu możemy w chmurze korzystać z:

    • Document Services (Amazon SimpleDB i Windows Azure’s Table Storage)
    • Queue Services (Amazon Simple Queue Service, Windows Azure’s Queue Service, Zend_Queue)
    • Storage Services (S3, Windows Azure’s Blog Storage, Nirvanix, lokalny system plików).

    W ten prosty sposób możemy przenośić swoje dane pomiedzy różnymi adapterami. W ciągu kilku miesięcy powinny pojawić się kolejne adaptery.

    Podziękowania dla: Wil Sinclair and Stas Malyshev, którzy zainicjowali Zend_Cloud

    SimpleDB Support

    Od teraz ZF ma wsparcie dla Simple Storage Service (S3), Simple Queue Service (SQS), oraz Elastic Cloud Compute (EC2). Jest wprowadzona obsługa wszystkich operacji na SimpleDB poprzez Zend_Service_Amazon_SimpleDb.

    Podziękowania dla: Wil Sinclair

    eBay Findings API Support

    eBay od dawna posiada rozbudowane REST API pozwalające programistom tworzenie interakcyjnych aplikacji z dużą ilością danych. Nowy Zend Framework (1.11) zawiera Zend_Service_Ebay_Findings, które w pełni obsługuje eBay Findings API. Pozwala to na tworzenie zapytań przez programistów dot. szczegółów aukcji eBay z uwzględnieniem kategorii i słów kluczowych.

    Podziękowania dla: Renan de Lima i Ramon Henrique Ornelas

    Obsługa nowych formatów konfiguracji

    Od samego początku konfiguracja Zend Framework oparta jest o Zend_Config oferującego adaptery: tablic PHP, XML, INI. Od teraz do tej listy należy dodać: YAML i JSON. Wow!

    Yaml jest bardzo popularnym formatem konfiguracyjnym w frameworku Symfony. Od osoby przyzwyczajone do Yaml’i nie muszÄ… siÄ™ z nim żegnać podczas migracji na ZF.

    Tak jak wcześniejsze adaptery, tak też Zend_Config_Yaml i Zend_Config_Json pozwalają na zapisywanie konfiguracji.

    Podziękowania dla: Stas Malyshev (przy Zend_Config_Json pomagał również Sudheer Satyanarayana)

    Skracacze URL-i

    W tej wersji dodano również komponent Zend_Service_ShortUrl. Dzięki temu możemy skorzystać z zewnętrznych serwisów skracających linki.
    W tym momencie posiada wsparcie dla [jdem.cz] oraz http://tinyurl.com.

    Podziękowania dla: Martin Hujer

    Dodatkowo

    Poza tym w Zend Framework 1.11:

    • bezpieczeÅ„stwo: zaÅ‚atano kilka klas, które byÅ‚y narażone na wycieki informacji
    • wsparcie dla Dojo zaktualizowane do wersji 1.5.0
    • dodano helper widoku Zend_View_Helper_Gravatar, dziÄ™ki któremu możemy korzystać z avatarów przypisanych do użytkowników w serwisie Gravatar (dziÄ™ki Marcinie)

    Pozostaje nam tylko czekać na oficjalne wydanie. A ci którzy mają więcej wolnego czasu proszę o testy i zgłaszanie błędów. Pomożecie nam wszystkim.

  • Permalink for 'Mateusz_Kami__ski/2010/08/02/Zend_Framework_1.10.7'

    Zend Framework 1.10.7

    Dodany: sierpieñ 2, 2010, 8:42am CEST przez matipl

    Bardzo mi odpowiada to regularne i częste wydawanie kolejnych wersji Zend Frameworka.
    Dzięki temu mamy potwierdzenie, że ZF się rozwija i społeczności zależy na poprawianiu jego funkcjonalności.

    Co przynosi nam piątkowe wydanie ZF 1.10.7? Ponad 60 załatanych błędów. Ciekawsze poprawki tej wersji:

    • Zend_Db_Adapter_Pdo_Pgsql (lastInsertId)
    • Zend_Db_Table_Rowset_Abstract akceptowaÅ‚ niepoprawne indeksy
    • nieskoÅ„czona pÄ™tla w StripTags
    • PowiÄ™kszenie funkcjonalnoÅ›ci dla Google Apps -> Groups (Email Lists)
    • Metoda removePrefixPath w Zend_Loader_PluginLoader.php usuwaÅ‚a Å›cieżkÄ™ z kluczem 0
    • poprawki w Zend_Log::_constructFilterFromConfig()
    • Popsuta implementacja S3_Stream
    • problem z iconv_set_encoding() –> Zend_Service_Flickr
    • Zend_Translate – poprawienie zarzÄ…dzanie cachem

    Download: Zend Framework 1.10.7

    Zend Framework 1.11.0

    A przed nami kolejna duża wersja ZF – 1.11. Powinna ukazać siÄ™ pod koniec wrzeÅ›nia 2010. Poza poprawieniem stabilnoÅ›ci (wszelkie 1.10.X), kilka aktualizacji, normalizacjÄ™ tÅ‚umaczeÅ„ tekstów w walidatorach i kilka nowoÅ›ci.

    Lada dzień zostanie wydany 1. milestone developerski ZF 2.0. Będzie już zmigrowany na przestrzenie nazw z PHP 5.3.

  • Permalink for 'Mateusz_Kami__ski/2010/05/27/Zend_Framework_coraz_stabilniejsze___1.10.5'

    Zend Framework coraz stabilniejsze ? 1.10.5

    Dodany: maj 27, 2010, 9:52am CEST przez matipl

    W miniony weekend zakończyła się kolejna akcja The Bug Hunt Days w ramach projektu Zend Framework.

    Jest to fantastyczna, spontaniczna akcja wśród programistów PHP. Tym razem zapaleńcy zamknęli 60 błędów. Obecnie linia 1.10 wygląda bardzo stabilnie.
    Poprawiono m.in. Zend_Date::_getLocalizedToken, Zend_Paginator (problem z cachowaniem),  Zend_Filter_StripTags, Zend_Db_Table_Row_Abstract, Zend_Form_Element_Radio i wiele innych.
    Pełna lista zmian.

    Download: Zend Framework 1.10.5

  • Permalink for 'Mateusz_Kami__ski/2010/04/29/Zend_Framework_1.10.4'

    Zend Framework 1.10.4

    Dodany: kwiecieñ 29, 2010, 8:04am CEST przez matipl

    Kwiecień programiści PHP korzystający z Zend Framework będą mile wspominać.

    Na początku miesiąca przywitaliśmy wersję 1.10.3, a kończymy miesiąc z wersją 1.10.4. Najnowszą wersje, podobnie jak 1.10.2, zawdzięczamy Bug Hunt Days organizowanemu przez społeczność Zend Framework od kilku miesięcy.

    Tym razem naprawiono aż 50 błędów. Dzięki poprawkom linia 1.10 stała się bezpieczniejsza i stabilniejsza.
    Koordynator akcji Matthew Weier O’Phinney zwraca uwagÄ™ na 3, najważniejsze jego zdaniem poprawki:

    • ZF-7493 – istotna poprawa w wydajnoÅ›ci serializacji Zend_Amf (wzrost szybkoÅ›ci do 200-300% w dużych zbiorach)
    • ZF-9263 – poprawka w Zend_Loader::isReadable() (eliminacja wiÄ™kszoÅ›ci ostrzeżeÅ„ przy Å‚adowaniu strony i wtyczek pod platformami Windows)
    • ZF-9504 –  bardziej wydajne generowanie wartoÅ›ci w Zend_XmlRpc_Value

    Download: Zend Framework 1.10.4

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2010/04/29/Zend_Framework_1.10.4_wydany'

    Zend Framework 1.10.4 wydany

    Dodany: kwiecieñ 29, 2010, 7:55am CEST przez webit
    Wczorajszym wieczorem ukazaÅ‚a siÄ™ nowa wersja Zend Framework, oznaczona numerkiem 1.10.4. Poprawiono w niej okoÅ‚o 50 przeróżnych błędów wyÅ‚apanych przed dwoma tygodniami w tzw. Bug Hunt Days. Jak informuje Zend na swoich stronach, 3 poprawki sÄ… warte szczególnej uwagi: Zend_Amf – poprawiono serializacjÄ™ (wzrost wydajnoÅ›ci o 200-300%) poprawiono dziaÅ‚anie Zend_Loader::isReadable() na platformach Windows dodano Å‚atkÄ™ [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2010/04/02/Zend_Framework_1.10.3'

    Zend Framework 1.10.3

    Dodany: kwiecieñ 2, 2010, 8:48pm CEST przez matipl

    Cóż za świąteczny prezent.
    1 kwietnia opublikowano kolejną wersję Zend Frameworka. Tak szybkie kolejne wydanie spowodowane było wykryciem błędu bezpieczeństwa w Dojo Toolkit.
    Z tego powodu pojawiła się wersja 1.9.8 oraz 1.10.3.

    W gałęzi 1.10 poza poprawieniem wspomnianego błędu naprawiono 80 zgłoszonych błędów. W większości są to drobne poprawki nie wpływające na funkcjonowanie całego frameworka.

    Poza tak błahymi zmianami jak dodanie opisów metod lub literówki, poprawki znalazły się w:
    Zend_Currency, Zend_Validate_CreditCard, Zend_Validate_EmailAddress, Zend_Validate_Float/Int, Zend_File_Transfer, a także usprawnienia w Zend_Validate_Sitemap_*

    Zapraszam do zapoznania się z pełną lista zmian.

    Download: Zend Framework 1.10.3

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2010/04/02/Zend_Framework_1.10.3_oraz_1.9.8_wydane'

    Zend Framework 1.10.3 oraz 1.9.8 wydane

    Dodany: kwiecieñ 2, 2010, 8:11am CEST przez webit
    Wczoraj, 1 kwietnia, wydano poprawki do Zend Framework z dwóch gałęzi 1.10 i 1.9. Dlatego dwóch, gdyż sÄ… to poprawki bezpieczeÅ„stwa, a nadal sporo osób korzysta z wersji 1.9.x. W przypadku 1.10.3 poprawiono okoÅ‚o 80 błędów (changelog). Poprawki poniekÄ…d wymusiÅ‚a Dojo Foundation, kilka tygodni wczeÅ›niej publikujÄ…c  pewne uwagi w biuletynie bezpieczeÅ„stwa (wiÄ™cej w biuletynie bezpieczeÅ„stwa [...]
  • Permalink for 'Dominik_Bu__aj/2010/03/30/Podpowiadanie_komend_Zend_Framework_w_bashu'

    Podpowiadanie komend Zend Framework w bashu

    Dodany: marzec 30, 2010, 9:35pm CEST przez webit
    NatrafiÅ‚em na ciekawy wpis na blogu Chrisa Morella odnoÅ›nie podpowiadania komend Zend Framework w Å›rodowisku bash. W systemach bazujÄ…cych na Unix/Linux dziaÅ‚a system podpowiedzi (bash completion); wpisujemy np. gr i wciskamy [TAB], w rezultacie podpwiedziane zostanÄ… nam wszelkie komendy zaczynajÄ…ce siÄ™ od „gr” (np. grub, grep, etc.). Na blogu, Chris, udostÄ™pniÅ‚ skrypt, który bÄ™dzie w [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2010/03/10/Zend_Framework__SQLSTATE_HY000___2002__Invalid_argument'

    Zend Framework: SQLSTATE[HY000] [2002] Invalid argument

    Dodany: marzec 10, 2010, 9:25am CET przez matipl

    Tym razem krótko i banalnie, ale może komuś się przyda.
    Kilka dni temu po ręcznej instalacji PHP 5.3.2 na jednej z maszyn z Debianem i podpięciu aplikacji opartej o Zend Framework jedyne co było widać to strona błędu z wpisem w logach serwisu:

    SQLSTATE[HY000] [2002] Invalid argument

    Super, konkretny komunikat :/ A jakże, nie ma jak PHP ;) Na poczÄ…tku pomyÅ›laÅ‚em, że to może wina wersji (aktualizacja php 5.2 -> 5.3) – nie, to nie byÅ‚o to.

    RozwiÄ…zanie okazaÅ‚o siÄ™ banalne. Wspomniany błąd generuje PDO, a jest wynikiem błędnie okreÅ›lonej lokalizacji socketu MySQL przez PHP podczas kompilacji (czÄ™sto PHP uważa, że to /tmp/mysql.sock – ?).
    Wystarczy dodać w naszym php.ini informację o lokalizacji:

    ; najpierw sprawdź, gdzie jest Twój mysql.sock
    pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock
    

    Może i bezpośrednio Zend Frameworka nie dotyczy, lecz PHP+PDO. Ale jeśli już da się złapać taki wyjątek, to Zend Framework powinien go zamienić na coś konkretnego.

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2010/03/05/Google_Chrome_i_przej%c5%9bcia_z_Zend_Date__'

    Google Chrome i przejścia z Zend_Date()

    Dodany: marzec 5, 2010, 3:12pm CET przez webit
    Używam przeglÄ…darki Google Chrome głównie do przeglÄ…dania sieci – bo jest szybka. Bardzo szybka.W procesie tworzenia witryn (caÅ‚a otoczka zwana developerkÄ…) używam nadal Firefoxa, gdyż ma co najmniej dwa niezastÄ…pione rozszerzenia – Firebug i Web developer.MajÄ…c do dyspozycji te dwie przeglÄ…darki, jestem w stanie zalogować siÄ™ do tworzonej aplikacji na dwa różne konta (bo jak [...]
  • Permalink for 'Dominik_Bu__aj/2010/02/26/Zend_Serializer_jednak_mo%c5%bce_by%c4%87_przydatny'

    Zend_Serializer jednak może być przydatny

    Dodany: luty 26, 2010, 8:58pm CET przez webit
    PoczÄ…tkowo dowiedziawszy siÄ™, iż do kolejnej wersji Zend Framework (mowa o 1.10.0), bÄ™dzie dodany komponent Zend_Serializer, pomyÅ›laÅ‚em „hej, czy to nie przesada opakowywać w klasÄ™ gotowe narzÄ™dzie dostÄ™pne w PHP”. Chodzi mi głównie o standardowÄ… i JSONowÄ… serializacjÄ™ i deserializacjÄ™… DziÅ› przeglÄ…dajÄ…c dokÅ‚adniej dokumentacjÄ™ sprawdziÅ‚em co tam jeszcze ciekawego wepchano. OkazaÅ‚o siÄ™, że komponent jest [...]
  • Permalink for 'Dominik_Bu__aj/2010/02/25/Czas_zacz%c4%85%c4%87_prace_nad_Zend_Framework_2.0'

    Czas zacząć prace nad Zend Framework 2.0

    Dodany: luty 25, 2010, 8:31pm CET przez webit
    Ostatnio, z różnych powodów, maÅ‚o byÅ‚em aktywny na sieci… mam nadzieje ze to siÄ™ zmieni. A zacznÄ™ od nadrobienia pewnych zalegÅ‚oÅ›ci. Jak zapewne odnotowaliÅ›cie, wydano już peÅ‚nÄ… wersjÄ™ Zend Framework 1.10.0, a także dwie kolejne wersje peÅ‚ne poprawek (tzw. minor releases). O wszystkim informowaÅ‚ na bieżąco Mateusz KamiÅ„ski na swoim blogu. Ja dodam tylko najÅ›wieższy [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2010/02/25/Zend_Framework_1.10.2'

    Zend Framework 1.10.2

    Dodany: luty 25, 2010, 9:43am CET przez matipl

    Zespół Zend Frameworka załatał kolejne 50 błędów i tym samym wydał wersję ZF 1.10.2

    Akcja została przeprowadzona w minionym tygodniu w ramach kolejnego Bug Hunt Days mająca na celu poprawę stabilności frameworka.

    Nie są to krytyczne błędy, ale niektóre bardzo uciążliwe w specyficznych sytuacjach. Poprawki, na które warto zwrócić uwagę:

    • obsÅ‚uga IDN dla .EU w Zend_Validate_Hostname
    • fetchRow() ignorowaÅ‚ limit offset
    • problem z komunikatem błędu w Zend_Validate_PostCode
    • opcja „mx” byÅ‚a ignorowana w Zend_Validate_EmailAddress
    • Zend_Validate_File_isImage obsÅ‚uguje teraz wszystkie typy obrazków
    • Zend_XmlRpc_Value_Double zaokrÄ…glaÅ‚ do 6 miejsc po przecinku

    Zapraszam do aktualizacji i zobaczenia innych poprawek w wersji 1.10.2.

    Download: Zend Framework 1.10.2 Full

  • Permalink for 'Mateusz_Kami__ski/2010/01/28/Zend_Framework_1.10.0_wydane'

    Zend Framework 1.10.0 wydane

    Dodany: styczeñ 28, 2010, 9:00am CET przez matipl

    Wczoraj odbyÅ‚a siÄ™ nie tylko premiera nowego produktu Apple (iPad), ale również Zend w koÅ„cu zamknÄ…Å‚ kolejnÄ… wersjÄ™ swojego frameworka dla PHP – ZF w wersji 1.10.0.

    ListÄ™ nowoÅ›ci opisaÅ‚em przy okazji ukazania siÄ™ wersji beta 1, dlatego nie bÄ™dÄ™ tego powtarzaÅ‚. Dodatkowo zmieniona zostaÅ‚a strona pobraÅ„ – teraz jeszcze bardziej zachÄ™ca siÄ™ nas do skorzystania z Zend Server.

    Aktualizacji nie ominęła dokumentacji projektu. Wprowadzono w końcu jasny podział na poszczególne wersje. Wprowadzono sekcję Learning Zend Framework oraz naniesiono poprawki w Reference Guide.

    Download: ZF 1.10.0

  • Permalink for 'Mateusz_Kami__ski/2010/01/26/Zend_Framework_na_hostingu_wsp%c3%b3%c5%82dzielonym'

    Zend Framework na hostingu współdzielonym

    Dodany: styczeñ 26, 2010, 1:04pm CET przez matipl

    Większość ofert hostingowych w Polsce od zawsze udostępnia nam jeden katalog, ew. możliwość wskazania dla danej domeny katalogu gdzie przechowujemy nasz projekt.
    Dzięki temu wystarczy do niego wgrać aplikację i wszystko działa.
    Kiedyś nie stanowiło to problemu, gdy cała aplikacja była w jednym worku, a za pomocą odpowiednich sztuczek nie pozwalało się na bezpośredni dostęp do plików źródłowych PHP lub konfiguracyjnych.

    Obecnie, np. z punktu widzenia osoby tworzącej z wykorzystaniem Zend Framework stanowi to problem, ponieważ domyślny układ projektu wygląda tak:

       application/
          controllers/
          views/
             scripts/
       library/
       public/
       tests/
    

    Ze wzglÄ™dów m.in. bezpieczeÅ„stwa w ZF jest wydzielony jeden katalog publiczny (public), który jest domyÅ›lnym katalogiem dostÄ™pnym z Sieci. Gdy takÄ… aplikacjÄ™ umieÅ›cimy np. na hostingu w home.pl aplikacja nam siÄ™ nie uruchomi, a każda osoba z Internetu bÄ™dzie miaÅ‚a dostÄ™p do wszystkich plików (pliki PHP nie stanowiÄ… problemu, ale już pliki INI, SQL tak). Wiele osób przegrywa plik index.php do katalogu nadrzÄ™dnego odpowiednio go modyfikujÄ…c – to błąd. Owszem, aplikacja zadziaÅ‚a, ale nie poprawi to wzglÄ™dów bezpieczeÅ„stwa.

    Problem można bardzo łatwo rozwiązać jeśli nasz usługodawca daje możliwość umieszczania plików .htaccess:

    RewriteEngine On
    
    RewriteRule ^\.htaccess$ - [F]
    
    RewriteCond %{REQUEST_URI} =""
    RewriteRule ^.*$ /public/index.php [NC,L]
    
    RewriteCond %{REQUEST_URI} !^/public/.*$
    RewriteRule ^(.*)$ /public/$1
    
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^.*$ - [NC,L]
    
    RewriteRule ^public/.*$ /public/index.php [NC,L]
    

    Wystarczy go umieścić w katalogu głównym, a on załatwi już odpowiednie przekierowania poszczególnych wywołań.
    Oczywiście jeśli mamy możliwość konfiguracji vhost-ów lub ustawienia katalogu aplikacji w inny sposób powinniśmy z niego skorzystać, zamiast cudować z htaccess.

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2010/01/22/Uaktualniona_dokumentacja_Zend_Framework'

    Uaktualniona dokumentacja Zend Framework

    Dodany: styczeñ 22, 2010, 9:32pm CET przez webit
    Dziś w nocy ukazała się pierwsza wersja kandydująca Zend Framework 1.10rc1. Można ją pobrać z oficjalnej strony aplikacji. O nowych ficzerach przeczytacie na devzone.zend.com. Przy okazji dziś uaktualniona została dokumentacja frameworka. Można teraz wybrać wersję na jakiej pracujemy, aby dostać dokumentację relatywną do możliwości naszej wersji ZF. Nową dokumentację znajdziecie pod starym adresem: http://framework.zend.com/manual/en/. PS [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2010/01/22/PHP_APC___czy_warto_korzysta%c4%87_z_opcode_caching_'

    PHP APC ? czy warto korzystać z opcode caching?

    Dodany: styczeñ 22, 2010, 8:49am CET przez matipl

    Dawno na blogu nie pisaÅ‚em nic o optymalizacji – postanowiÅ‚em odÅ›wieżyć temat.
    Obecnie bardzo wiele osób korzystających z PHP używa do tego standardowego zestawu LAMP (Linux + Apache + MySQL + PHP) i dla nich będzie ten wpis.

    W używaniu LAMP nie ma w tym nic złego. I nie zamierzam nikomu kazać zmieniać przyzwyczajeń lub uczyć się nowego oprogramowania. Za to pokażę jak łatwo można zmniejszyć zużycie zasobów naszej maszyny (szczególnie pamięci RAM) korzystając z opcode caching, czyli tzw. akceleratorów do PHP.

    Jednym z rodziny opcode caching jest APC, gdzie o sposobie jego używania już Wam pisałem. Dzisiaj chciałbym pokazać Wam, że w wypadku gdy korzystamy z frameworka powinniśmy zawsze korzystać z APC. W moim przykładzie oprę się o wyniki dla Zend Frameworka.

    Postawiłem LAMP w oparciu o aktualną wersję Debiana. Stworzyłem za pomocą Zend_Tool pustą aplikację w oparciu o ZF.
    W bazie stworzyłem jedną pustą tabelę user z polem id i name. W IndexController::indexAction w prosty sposób z niej skorzystałem i dodałem prostą metodę zliczającą zajętość pamięci w taki oto sposób:

    public function indexAction() {
        $start = $this->_memoryUsage();
        $userModel = new Model_User(); //klasa dziedziczÄ…ca po Zend_Db_Table
    
        $this->view->start = $start;
        $this->view->users = $userModel->fetchAll();
        $this->view->end   = $this->_memoryUsage();
    }
    
    protected function _memoryUsage() {
        $mem_usage = memory_get_usage(true);
        $usage = '';
    
        if ($mem_usage < 1024)
            $usage = $mem_usage . ' bytes';
        elseif ($mem_usage < 1048576)
            $usage = round($mem_usage/1024,2) . ' kilobytes';
        else
            $usage = round($mem_usage/1048576,2) . ' megabytes';
    
        return $usage;
    }
    

    Przy braku korzystania z APC na mojej maszynie developerskiej uzyskałem wynik:

    MEM start: 5.5 megabytes
    MEM end: 6 megabytes
    

    Wynika z tego, że skorzystanie z ZF wymaga 5.5 MB, i użycie dodatku w postaci  Zend_DB zjada dodatkowo 0.5 MB RAM. Czy to dużo?
    Aplikacja, która korzysta ze średniej ilości dodatków ZF w postaci helperów, bazy, formularzy, validatorów zużywa już około 30 MB pamięci

    Po tym gdy aktywowałem APC, w taki sposób jak opisywałem we wcześniejszych postach zużycie dla całej naszej aplikacji spada 3-krotnie:

    MEM start: 1.75 megabytes
    MEM end: 2 megabytes
    

    Dla wspomnianej Å›redniej aplikacji ZF owe zużycie również spada trzykrotnie do okoÅ‚o 10 MB. Jest to bardzo duży zysk. W naszym przypadku zauważcie, że posÅ‚ugujemy siÄ™ „jednÄ… instancjÄ… aplikacji”.

    PodsumowujÄ…c – warto – oszczÄ™dzamy pamięć, jak również mamy zysk na czasie wykonywania siÄ™ aplikacji.
    Każdy framework ma to do siebie, że jest zbudowany z wielu klocków (duża zaleta), ale wiąże się to również z dużą ilością plików do przeczytania i wykonania (w przypadku PHP) co opcode caching jest w stanie bardzo przyspieszyć.

  • Permalink for 'Mateusz_Kami__ski/2010/01/15/Zend_Framework_1.10.0beta1'

    Zend Framework 1.10.0beta1

    Dodany: styczeñ 15, 2010, 4:49pm CET przez matipl

    Koniec piątku przywitał nas pojawieniem się wersji beta frameworka PHP.
    Niecały miesiąc po ukazaniu się wersji alpha możemy w pełni przetestować możliwości, które przyniesienie wersja Zend Frameworka 1.10, dlaczego? Ponieważ wydanie wersji beta oznacza, że w API frameworka nie dojdzie już do żadnych zmian i lista nowości jest już zamknięta. O nowościach już pisałem, ale powtórzmy dla potomnych co pojawi się w wersji 1.10.0:

    • Zend_Barcode
    • cache: Zend_Cache_Backend_Static, Zend_Cache_Manager
    • feed: Zend_Feed_Pubsubhubbub, Zend_Feed_Writer
    • filtry: Zend_Filter_Boolean, Zend_Filter_Compress/Decompress, Zend_Filter_Null
    • logi: Zend_Log::factory(), Zend_Log_Writer_ZendMonitor
    • Zend_Markup
    • Zend_Oauth
    • Zend_Serializer
    • usÅ‚ugi: Zend_Service_DeveloperGarden, Zend_Service_LiveDocx, Zend_Service_WindowsAzure
    • walidatory: Zend_Validate_Barcode, Zend_Validate_Callback, Zend_Validate_CreditCard, Zend_Validate_PostCode
    • dodatkowe zasoby w Zend_Application zawierajÄ…ce m.in. Cachemanager, Dojo, Jquery, Layout, Log, Mail, and Multidb
    • dokonano refactoringu Zend_Loader::loadClass() (m.in. obsÅ‚uga namespaców przy autoloadingu)

    Nie będę tłumaczył co dane klasy robią, ponieważ są bardzo logicznie nazwane (no z jednym wyjątkiem, o którym pisałem). Dodatkowo przepisano Zend_Tool rozszerzając o nowe funkcje tj.

    • nowy CLI runner z obsÅ‚ugÄ… katalogu domowego i konfiguracji
    • nowi dostawcy: generowanie modeli(!), ustawienia dla DbAdapter, generator layoutów i formularzy(!)
    • domyÅ›lny projekt bÄ™dzie posiadaÅ‚ wsparcie dla logowania błędów z poziomu ErrorController

    20 stycznia ukaże się wersja RC1, a 26 stycznia ujrzymy pełną wersją 1.10.0!

    Download: Zend Framework 1.10.0 Beta 1 Full

  • Permalink for 'Mateusz_Kami__ski/2010/01/12/Zend_Framework_1.9.7_z_%c5%82atami_bezpiecze%c5%84stwa_'

    Zend Framework 1.9.7 z łatami bezpieczeństwa!

    Dodany: styczeñ 12, 2010, 11:05am CET przez matipl

    Wczoraj ukazaÅ‚y siÄ™ aż 3 wersje popularnego frameworka PHP – Zend Framework.
    Stała się rzecz niespotykana, bo ruszono wersje starsze od bieżącej i w gałęziach 1.8 i 1.7 pojawiły się również aktualizacje (1.8.5, i 1.7.9). Powodem jest poprawienie 6 błędów bezpieczeństwa, które zostały usunięte:

    • możliwy atak XSS lub wstrzykniÄ™cie HTML w Zend_Json
    • możliwy atak XSS w Zend_Service_ReCaptcha_MailHide
    • możliwe wstrzykniÄ™cie MIME-type w Zend_File_Transfer
    • możliwy atak XSS w Zend_Filter_StripTags, gdy komentarze sÄ… dozwolone
    • możliwy atak XSS w Zend_Dojo_View_Helper_Editor
    • możliwy atak XSS ze wzglÄ™du na niezgodne kodowanie

    Autorzy proszę wszystkich o jak najszybsze aktualizacje. W sumie poprawiono ponad 40 błędów. Tym samym powinna to być już ostatnia wersja przed ukazaniem się ZF 1.10.

    Download: Zend Framework

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/12/22/Zend_Framework_1.10.0alpha1'

    Zend Framework 1.10.0alpha1

    Dodany: grudzieñ 22, 2009, 5:51pm CET przez webit
    Dziś nad ranem czasu polskiego, ukazała się kolejna wersja Zend Framework. Jest to wydanie oznaczone jako 1.10.0 ALPHA, przeznaczone do testowania nowych funkcjonalności, a jest czego testować Nowe komponenty w Zend Framework 1.10 Zend_Barcode Zend_Cache_Backend_Static Zend_Cache_Manager Zend_Exception (wsparcie dla poprzedzających wyjątków; markuje rozwiązanie dostępne od PHP 5.3.0) Zend_Feed_Pubsubhubbub Zend_Feed_Writer Zend_Filter_Compress/Decompress Zend_Filter_Null Zend_Log::factory() Zend_Log_Writer_ZendMonitor Zend_Markup Zend_Service_LiveDocx [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2009/12/22/Zend_Framework_1.10_ju%c5%bc_w_styczniu_2010'

    Zend Framework 1.10 już w styczniu 2010

    Dodany: grudzieñ 22, 2009, 10:50am CET przez matipl

    Ekipa programistów Zend Framework ogłosiła, że już 21 stycznia 2010 roku możemy spodziewać się ZF 1.10.
    Jestem dość zdziwiony kolejnym release przed wydaniem ZF 2.0, którego wydanie planowane jest na wiosnę 2010. Mimo wszystko każdy zainteresowany może w domowym zaciszu przetestować nowości w wersji alfa 1.10, w której mamy następujące nowości w pakietach:

    • Zend_Barcode wraz z Zend_Validate_Barcode
    • Zend_Cache_Backend_Static
    • Zend_Cache_Manager
    • Zend_Feed_Pubsubhubbub
    • Zend_Feed_Writer
    • Zend_Filter_Compress/Decompress
    • Zend_Filter_Null
    • Zend_Log::factory() oraz Zend_Log_Writer_ZendMonitor
    • Zend_Markup
    • Zend_Service_LiveDocx
    • Zend_Service_WindowsAzure
    • Zend_Validate_Callback
    • Zend_Validate_CreditCard
    • Zend_Validate_PostCode

    Duży refactoring przeszedł również Zend_Tool, w którym dodano:

    • nowy CLI runner z obsÅ‚ugÄ… katalogu domowego i konfiguracji
    • nowy dostawcy dla generatora modeli, konfiguracji DbAdapter, layoutów oraz generatora formularzy
    • domyÅ›lna struktura projektu teraz obsÅ‚uguje logowanie błędów z ErrorController

    W takim razie zapraszam do ściągnięcia źródeł i zobaczenia zmian.

    Download: Zend Framework 1.10.0 ALPHA

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/12/08/Nadchodzi_Zend_Framework_2.0'

    Nadchodzi Zend Framework 2.0

    Dodany: grudzieñ 8, 2009, 8:26pm CET przez webit
    Powoli nadchodzi Zend Framework w wersji 2.0. WczeÅ›niej zobaczymy Zend Framework 1.10, która prawdopodobnie bÄ™dzie ostatniÄ… wersjÄ… z obecnej gałęzi. W wersji 2.0 szykuje siÄ™ wiele znaczÄ…cych zmian. Zacznijmy od tego, że framework bÄ™dzie przepisany. BÄ™dzie wykorzystywaÅ‚ namespace‘y, a wiÄ™c minimalne wymagania do uruchomienia to PHP 5.3. NajwiÄ™kszy nacisk poÅ‚ożony bÄ™dzie na MVC. W mapie [...]
  • Permalink for 'Dominik_Bu__aj/2009/11/24/Zend_Framework_1.9.6_wydany'

    Zend Framework 1.9.6 wydany

    Dodany: listopad 24, 2009, 9:20pm CET przez webit
    WÅ‚aÅ›nie przed momentem, Matthew Weier O’Phinney poinformowaÅ‚ na stronach Zend Developer Zone o wydaniu Zend Framework 1.9.6. W szóstym wydaniu poprawiajÄ…cym wersjÄ™ z gałęzi 1.9 skorygowano ponad 60 zgÅ‚oszonych błędów. Dla zainteresowanych udostÄ™pniono szczegółowy dziennik zmian. NajnowszÄ… wersjÄ™ frameworka można pobrać z oficjalnej strony.
  • Permalink for 'Dominik_Bu__aj/2009/11/03/Kolejne_rozczarowanie_Zend_Framework'

    Kolejne rozczarowanie Zend Framework

    Dodany: listopad 3, 2009, 7:50pm CET przez webit
    Nowy projekt (a wÅ‚aÅ›ciwie dwa) majÄ… zostać oparte o Zend Framework. Niby wszystko piÄ™knie – no bo mamy „zajefajny” framework, który zrobi niemal wszystko (brakuje tylko faktu, że kawy nie parzy ). ChcÄ…c mieć projekty piÄ™knie od poczÄ…tku wykonane z użyciem Zend_Tool i Zend_Application generuje strukturÄ™ dokumentu. Przy czym, w ZF 1.8 zaleca siÄ™ trzymanie [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2009/09/23/Zend_Framework__w_2_dni_zamkni%c4%99to_103_zg%c5%82oszenia'

    Zend Framework: w 2 dni zamknięto 103 zgłoszenia

    Dodany: wrzesieñ 23, 2009, 8:36am CEST przez matipl

    Zend FrameworkTakiego wyczynu projekt Zend Framework jeszcze nie widział! W miniony czwartek i piątek (17/18 września) zamknięto aż 103 sprawy z bug trackera.

    Potrzebowano rÄ…k do pracy, szczególnie do zamykania zgÅ‚oszeÅ„ błędów, które błędami nie byÅ‚y. W tym celu od wrzeÅ›nia w każdy trzeci czwartek i piÄ…tek miesiÄ…ca organizowana bÄ™dzie impreza pod hasÅ‚em “Bug Hunt Days”.

    Wynikiem zeszłotygodniowego zamykania zgłoszeń ukazała się nowa wersja Zend Framework oznaczona numerem 1.9.3. Wersja zawiera oczywiście wyłącznie poprawki zgłoszonych wcześniej błędów (niektóre to np. wyłącznie literówki w przykładach) z ponad 40 różnych komponentów.

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/09/23/Zend_Framework_coraz_bardziej_rozczarowuje_'

    Zend Framework coraz bardziej rozczarowuje?

    Dodany: wrzesieñ 23, 2009, 7:57am CEST przez webit
    Rozumiem, że rozwój najpopularniejszego frameworka dla php, wymusza aktualizacje co jakiś czas. Nie rozumiem jednak dlaczego one są robione tak często! Czy nie można core framworka udostępnić oddzielnie a całą resztę (mało ważne moduły) wydawać jako dodatek. W ten sposób dodanie nowych dwóch Zend_Services_XXX nie powodowałoby konieczności zmiany numeracji całego frameworka? Inna sprawa, że wiecznie [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2009/09/18/Zend_Framework_Tips_Trick__DbProfiler'

    Zend Framework Tips&Trick: DbProfiler

    Dodany: wrzesieñ 18, 2009, 12:04pm CEST przez matipl

    Zend FrameworkRozmawiając ostatnio z ludźmi z branży (np. podczas interview), którzy zarzekają się, że znają i korzystają z Zend Framework okazuje się, że ich wiedza kończy się często na etapie wklepywania kodu do kontrolera.

    Dlatego postanowiłem, że różnymi banalnymi, ale użytecznymi rzeczami z ZF będę dzielił się z Wami na moim blogu.

    Wczoraj chciałem zoptymalizować bazę i musiałem zobaczyć dokładne zapytania SQL, które idą do bazy zewn. i ich czasy wykonywania.
    Z samymi zapytaniami może nie byÅ‚oby problemu dla poczÄ…tkujÄ…cego programisty z wykorzystaniem ZF – wystarczy jakieÅ› wyplucie obiektów Zend_Db_Select na ekran, ale czasy trwania ?

    Z pomocÄ… przychodzi nam pakiet Zend_Db_Profiler. Aby nie Å›miecić sobie na ekranie aplikacji, polecam zainstalować FirePHP dla Firefoksa, wtedy możemy skorzystać z Zend_Db_Profiler_Firebug i w wyniki przeglÄ…dać w konsoli Firebug’a. Poniżej przedstawiam wtyczkÄ™:

    class Zextend_Controller_Plugin_DbProfiler extends Zend_Controller_Plugin_Abstract
    {
    
    public function preDispatch(Zend_Controller_Request_Abstract $request)
    {
    $db = Zend_Db_Table_Abstract::getDefaultAdapter();
    $profiler = new Zend_Db_Profiler_Firebug('DB - All Queries');
    $profiler->setEnabled(true);
    
    $db->setProfiler($profiler);
    }
    }
    

    Następnie wystarczy w pliku konfiguracyjnym naszej aplikacji (configs/application.ini) włączyć działanie wtyczki:

    resources.frontController.plugins.dbProfiler =
    "Zextend_Controller_Plugin_DbProfiler"

    Od tego momentu w Firebugu zobaczymy wszystkie zapytania SQL, które idą do bazy wraz z ich parametrami i czasami wykonywania.

    wynik w Firebug

    wynik w Firebug

  • Permalink for 'Mateusz_Kami__ski/2009/09/02/ZendFramework_i_PHPUnit'

    ZendFramework i PHPUnit

    Dodany: wrzesieñ 2, 2009, 1:54pm CEST przez matipl

    php-logoAktualna wersja Zend Framework wspomaga tworzenie testów jednostkowych. Wykorzystuje do tego znaną paczkę PHPUnit dostępną w repozytorium PEAR.

    Obecnie po utworzeniu naszego projektu opartego o ZF (zf create project nazwa_projektu) i po dodaniu automagicznie nowych kontrolerów (zf create controller nazwa_kontrolera) tworzone są automatycznie puste klasy testujące w katalogu /tests.

    Dlaczego warto korzystać z testów jednostkowych?

    UnitTesty automatyzują nam testowanie aplikacji. Dzięki nim jesteśmy w stanie natychmiast wychwycić błąd z innych części systemu, gdzie takie błędy nie powinny się pojawiać.
    Pomagają również kontrolować postęp tworzenia aplikacji, na zasadzie najpierw unitTest, poźniej implementacja, gdzie takie podejście jest używane w eXtreme Programming. Korzystając z unitTestów możemy stworzyć odpowiednie narzędzia monitorujące dany system na podstawie wyników z testów jednostkowych.

    Przygotowanie środowiska

    Aby móc skorzystać z przyjemności tworzenia testów jednostkowych najpierw musimy zainstalować paczkę PHPUnit.

    1. Najpierw zaktualizujmy na wszelki wypadek dotychczasowe pakiety PEAR’a:
      $pear upgrade-all
    2. Dodajemy nowy kanał dla PEAR:
      $pear channel-discover pear.phpunit.de
    3. I instalujemy PHPUnit z zależnościami
      $pear install --alldeps phpunit/PHPUnit

    Jeśli wszystko poszło bez problemów możemy do korzystania z PHPUnit zwiększyć dostępną pamięć dla PHP w pliku ini zmieniając wartość memory_limit na przynajmniej 64M.

    Teraz już możemy przejść do samych testów. Do tego celu posłużymy się przykładowym kontrolerem.

    1. Tworzymy kontroler Kontakt:
      zf create controller kontakt
    2. Nasza hierarchia katalogów w skrócie wygląda teraz tak:
      `-- application
       |-- configs
       `-- controllers
        |-- KontaktController.php
      |-- library
      |-- public
      `--tests
       `-- application
        `-- controllers
         |-- KontaktControllerTest.php
        |-- bootstrap.php
       |-- library
       |-- phpunit.xml
    3. Powinniśmy skonfigurować bootstrap do celów testowych, edytujemy /tests/application/bootstrap.php:
      set_include_path(implode(PATH_SEPARATOR, array(
      realpath(dirname(__FILE__) . '/../../library'),
      get_include_path(),
      )));
      
      defined('APPLICATION_PATH') || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../../application'));
      defined('APPLICATION_ENV') || define('APPLICATION_ENV', 'testing');
      defined('APPLICATION_LOAD_TESTDATA') || define('APPLICATION_LOAD_TESTDATA', true);
      
      require_once 'Zend/Loader/Autoloader.php';
      $autoloader = Zend_Loader_Autoloader::getInstance();
      spl_autoload_unregister(array($autoloader, 'autoload'));
      
      Zend_Loader_Autoloader::resetInstance();
      $autoloader = Zend_Loader_Autoloader::getInstance();
      $autoloader->registerNamespace('PHPUnit_');
      
    4. Pozostało nam już tylko zedytować klasę KontaktControllerTest, aby korzystało z naszego bootstrapa, i dopisania prostego testu. Po zmianach powinna klasa wyglądać tak:
      class KontaktControllerTest extends Zend_Test_PHPUnit_ControllerTestCase {
      
      public function setUp() {
      $application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini');
      $this->bootstrap = array($application->getBootstrap(), 'bootstrap');
      return parent::setUp();
      }
      
      public function tearDown() {
      /* Tear Down Routine */
      }
      
      public function testIndexAction() {
      $this->dispatch('/kontakt');
      $this->assertController('kontakt');
      $this->assertAction('index');
      }
      
      }
      
    5. Aby nie musieć każdej klasy wywoływać osobno, możemy skonfigurować odpowiednie phpUnit. Przykładowy plik konfiguracyjny /tests/phpunit.xml może wyglądać tak:
      <phpunit bootstrap="./application/bootstrap.php"
      colors="true"
      convertErrorsToExceptions="true"
      convertNoticesToExceptions="true"
      convertWarningsToExceptions="true"
      stopOnFailure="false">
      
      <testsuite name="Test_ZF">
      <directory>./application/</directory>
      </testsuite>
      </phpunit>
      
    Pierwszy test

    Powstała klasę testującą możemy już uruchomić. Umieściłem przykładowy test (testIndexAction) sprawdzający czy znajdujemy się we właściwej lokalizacji. W tym celu udajemy się do /tests i wydajemy polecenie:

    $phpunit --configuration phpunit.xml
    PHPUnit 3.3.17 by Sebastian Bergmann.
    
    Time: 0 seconds
    OK (1 test, 2 assertions)
    

    Dzięki skorzystaniu z pliku konfiguracyjnego xml, nie będziemy musieli dokonywać żadnych modyfikacji podczas dodawania kolejnych klas testujących. Docelowo, można przygotować stronę, która przedstawi nam graficznie jakie klasy działają już prawidłowo.

    Możliwości porównań pakietu Zend_Test / PHPUnit możemy znaleźć w dokumentacji.
    Mam nadzieję, ze to małe wprowadzenie poszerzy grono programistów korzystających z Zend Framework do używania testów jednostkowych, tak bardzo przydatnych przy większych aplikacjach.

  • Permalink for 'Mateusz_Kami__ski/2009/08/25/ZF__instalacja___tworzenie_nowego_projektu'

    ZF: instalacja & tworzenie nowego projektu

    Dodany: sierpieñ 25, 2009, 2:56pm CEST przez matipl

    Zend FrameworkIle razy tworzyłeś nowy projekt na bazie Zend Frameworka? W moim wypadku odpowiedź brzmi: wiele razy.
    Za każdym razem zastanawianie się co skopiować, jakie podstawowa wersje plików zostawić, no i trzeba od nowa stworzyć hierarchię katalogów.

    Do tej brudnej roboty mamy od wersji Zend Framework 1.8 pomocnika – Zend_Tool i trochÄ™ zmienione podejÅ›cie co do bibliotek ZF.
    Aktualnie (w Zend Server w standardzie) zaleca się posiadanie jednych źródeł Zend Framework na maszynę, a nie jak było wcześniej kopiowaliśmy te kilkanaście MB do każdego projektu. Dostosujmy naszą maszynę developerską do pracy z jedną wersją ZF. Poniżej w bardzo skróconej wersji przedstawię Wam jak zainstalować ZF i stworzyć jedną linijką poleceń cały nowy projekt oparty o Zend Framework.

    Najpierw musimy sprawdzić, jaki include_path posiada nasz PHP:

    matipl@hobbiton:~$ php -i | grep include_path
    include_path => .:/usr/share/php:/usr/share/pear => .:/usr/share/php:/usr/share/pear

    Jeśli powyższe polecenie (php -i) nie działa, musimy zainstalować konsolowego klienta PHP (często paczka php-cli).
    Widzimy powyżej, że PHP przetrzymuje ładowane pliki w /usr/share/php. Ściągamy aktualna wersję ZF i rozpakowujemy z niej katalog library/Zend do /usr/share/php/Zend. Fanstatycznie, możesz teraz pozbyć się z każdego projektu osobnej kopii ZF.

    Następnym krokiem jest sprawienie, aby automagiczny skrypt Zend Frameworka działał nam z konsoli.
    W moim wypadku (Debian) posiadam katalog /usr/lib/php5, gdzie skopiowałem z paczki ZF 2 pliki:

    • bin/zf.php
    • bin/zf.sh

    AbyÅ›my mogli posÅ‚ugiwać siÄ™ skryptem “zf” bez podawania zbÄ™dnej Å›cieżki gdzie siÄ™ znajduje musimy stworzyć link symboliczny:

    ln -s /usr/lib/php5/zf.sh /usr/bin/zf

    Teraz w dowolnym miejscu naszego systemu bÄ™dziemy mogli posÅ‚ugiwać siÄ™ poleceniem “zf”, tworzÄ…c np. nowy projekt. Ale najpierw sprawdźmy czy wszystko dziaÅ‚a poleceniem sprawdzajÄ…cym wersjÄ™ Zend Framework:

    matipl@hobbiton:~$ zf show version
    Zend Framework Version: 1.9.1

    Jeśli widzimy powyższy komunikat (ew. z inną wersją) to wszystko działa i możemy przejść do stworzenia naszego projektu. Posługujemy się do tego naszym skryptem:

    matipl@hobbiton:/home/services/httpd/_dev.matipl.pl$ zf create project test
    Creating project at /home/services/httpd/_dev.matipl.pl/test

    Tak oto stworzyliśmy w pełni funkcjonalny projekt oparty o Zend Framework. Możemy do niego w jednej shella linijce dodać np. nowy kontroler wraz z potrzebnym widokiem:

    matipl@hobbiton:/$ cd test.dev.matipl.pl
    matipl@hobbiton:/test.dev.matipl.pl$ zf create controller contact
    Creating a controller at /test.dev.matipl.pl/application/controllers/ContactController.php
    Creating an index action method in controller contact
    Creating a view script for the index action method at /test.dev.matipl.pl/application/views/scripts/contact/index.phtml
    Creating a controller test file at /test.dev.matipl.pl/tests/application/controllers/ContactControllerTest.php
    Updating project profile '/test.dev.matipl.pl/.zfproject.xml'

    W ten oto sposób mamy stworzoną podstronę Contact i możemy od razu sprawdzić czy działa wchodząc na nasza-maszyna.com/contact

    Dostępne polecenia zf: create [view,controller,action,module].
    Osobiście na razie korzystam tylko z automatycznego tworzenia nowego projektu, jakoś nie mogę się przekonać do korzystania z konsolki do rozbudowy projektu.

  • Permalink for 'Mateusz_Kami__ski/2009/08/06/ZendFramework_1.9'

    ZendFramework 1.9

    Dodany: sierpieñ 6, 2009, 2:22pm CEST przez matipl

    Zend FrameworkZ końcem lipca Zend udostępnił kolejną wersję swojego frameworku dla PHP.

    Od wersji 1.8 wydanej w maju poprawiono ponad 700 błędów. Nie wiem czy się z tego powodu cieszyć, bo bardziej mnie zastanawia czemu wersja z taką ilością błędów ujrzała światło dzienne jako wersja stabilna?

    Ale poza naprawianiem starych klas dodano kilka nowości w stosunku do wersji 1.8.4, które może zwykłych programistów nie zainteresują, ale warto to odnotować:

    • Zend_Rest_Route, Zend_Rest_Controller (warstwa MVC dla serwisów REST)
    • Zend_Feed_Reader (API dla feedów RSS/Atom)
    • Zend_Db_Adapter_Sqlsrv (adapter DB dla MS SQL Server)
    • Zend_Test_PHPUnit_Db (możliwość testowania zapytaÅ„ SQL z poziomu PHPUnit)
    • Zend_Log_Writer_Syslog (logowanie od dziennika systemowego)
    • Zend_View_Helper_BaseUrl (helper zwracajÄ…cy URL bazowy aplikacji)
    • Zend_Date (dodanie obsÅ‚ugi rozszerzenia DateTime)

    Moim zdaniem powinni się skupić na większej ilości helperów i innych wspomagaczy, aby można było spokojnie używać Zend Framework, jak np. eZ.

    Download: Zend Framework 1.9

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/08/03/Zend_Framework_1.9.0'

    Zend Framework 1.9.0

    Dodany: sierpieñ 3, 2009, 8:38pm CEST przez webit
    31 lipca, wydano nowÄ… wersjÄ™ Zend Framework, oznaczonÄ… 1.9.0. Jest to kolejna wersja wydana w ostatnim kwartale. Tempo ogromne, o czym Å›wiadczy fakt, iż wersji 1.8 (wydanej w maju) poprawiono okoÅ‚o 700 zgÅ‚oszonych błędów! Lista nowoÅ›ci jest dÅ‚uga, poniżej ważniejsze z nich: Zend_Rest_Route, Zend_Rest_Controller i Zend_Controller_Plugin_PutHandler – warstwa MVC layer dla serwisów REST Zend_Feed_Reader – [...]

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2009/07/11/LocalStorage___HTML5'

    LocalStorage ? HTML5

    Dodany: lipiec 11, 2009, 12:00am CEST
    Ostatnio w pracy zastanawiałem się nad możliwością przechowywania większej ilości danych po stronie użytkownika. Standardową metoda magazynowania informacji jest używanie Cookies. Mają one jednak znaczące ograniczenie wielkości ? jak dobrze pamiętam 4kB, co prawda można zaserwować ich większą ilość, ale wprowadzamy tym tylko zamieszanie,...

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/05/29/Zend_Loader_w_ZF1.8'

    Zend_Loader w ZF1.8

    Dodany: maj 29, 2009, 7:08pm CEST przez webit
    PoczÄ…wszy od wersji 1.8, Zend Framework posiada caÅ‚kowicie przepisany Zend_Loader. Nie majÄ…c czasu na „peÅ‚nÄ… migracjÄ™” (czyt. wymagane zmiany w kodzie), po aktualizacji biblioteki do wersji 1.8.x zobaczymy warning informujÄ…cy, iż Zend_Loader::registerAutoload(); jest przestarzałą metodÄ… i że w wersji 2.0 zostanie usuniÄ™ta. Co zatem zrobić, jeÅ›li nie mamy czasu (lub ochoty) na grzebanie w kodzie [...]
  • Permalink for 'Dominik_Bu__aj/2009/05/27/Zend_Framework_1.8.2_wydany__'

    Zend Framework 1.8.2 wydany?!

    Dodany: maj 27, 2009, 8:17pm CEST przez webit
    Po skoÅ„czeniu udoskonaleÅ„ i dokonaniu kilku poprawek na PinkCrow, postanowiÅ‚em w koÅ„cu zmigrować witrynÄ™ zawierajÄ…cÄ… moje portfolio do ostatniej wersji Zend Framework, czyli 1.8.1. A zmian bÄ™dzie od groma. Od wprowadzenia dawno planowanych obsÅ‚ug layoutu i formularzy przez użycie najnowszych „gadżetów” Zend_Application, Zend_Navigation etc. Ale do rzeczy… Jako że lokalnie używam svn (historia zmian, tagowanie [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2009/05/27/ZF__Zend_Navigation'

    ZF: Zend_Navigation

    Dodany: maj 27, 2009, 8:43am CEST przez matipl

    Zend FrameworkJako, że w Zend Framework 1.8 pojawiÅ‚ siÄ™ nowy komponent do generowania menu, map stron itp. – Zend_Navigation chciaÅ‚em z niego skorzystać w aktualnym projekcie, aby nie wynajdować koÅ‚a od nowa.

    Ale w przypadku ZF nie jest to takie proste. Prawie wszystko co nowe w frameworku jest marginalnie opisany w dokumentacji. A nawet jeÅ›li lepiej to brak wiążących przykÅ‚adów (kontroler – widok – helper). Porozrzucane itp. Wciąż wierzÄ™, że kiedyÅ› dokumentacja ZF osiÄ…gnie taki poziom jak ezComponents, gdzie opanowanie komponentu Graph zajęło mi kilka minut.

    A wystarczyło wszystko zawrzeć w 6 prostych krokach. Ostatecznie menu zawarłem w pliku navigation.xml, mały wycinek:

    <?xml version="1.0" encoding="UTF-8"?>
    <config>
        <nav>
            <home>
                <label>Strona główna</label>
                <controller>index</controller>
            </home>
            <issue>
                <label>Sprawy</label>
                <controller> issue </controller>
            </issue>
        </nav>
    </config>

    Tak samo jak <controller/> możemy dodatkowo podać akcję, która ma się wykonać. Ewentualnie możemy podać gotowy link jako <uri/>.
    Następnie wystarczy zrobić zasób dla nawigacji:

    class Zextend_Application_Resource_Navigation extends Zend_Application_Resource_ResourceAbstract
    {
        public function init()
        {
            $config = new Zend_Config_Xml ( APPLICATION_PATH . '/configs/navigation.xml', 'nav' );
            $container = new Zend_Navigation($config);
    
            Zend_Registry::set('Zend_Navigation', $container);
    
            return $container;
        }
    }

    Zamiast podawać $config możemy wstawić gotową tablicę phpową, ale przez to zrobiłby się bałagan i trudny dostęp, gdybyśmy chcieli coś zmieniać. W naszym magicznym pliku application.ini dodajemy poniższą linijkę celem ładowania nowego zasobu:

    resources.navigation = "array()"

    Dodatkowo w zasobie Acl powiązałem role z menu, dzięki temu nie mamy linków, do których brakuje nam dostępu. Robi się to następująco, u mnie w Zextend_Application_Resource_Acl:

    Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl);
    Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole('guest');

    PozostaÅ‚o nam już tylko wyÅ›wietlenie naszego menu w widoku/layoucie. Odpowiedni helper automagicznie zaÅ‚aduje sobie nasz rejestr nazwany ’Zend_Navigation’:

    <?php echo $this->navigation()->menu()->renderMenu(); ?>

    W ten sposób wygenerujemy następujący kod:

    <ul class="navigation">
    	<li class="active"><a href="http://matipl.pl/">Strona główna</a></li>
    	<li><a href="http://matipl.pl/issue">Sprawy</a></li>
    </ul>

    Finito ) Można byÅ‚oby zrobić samo generowanie ACL i nawigacji bez zabawy z XML, ale przy aktualnym projekcie jest mi to zbÄ™dne. W moich delicjach można znaleźć: Zend Framework: Documentation – Navigation i Navigation Helper.

  • Permalink for 'Mateusz_Kami__ski/2009/05/14/ZendFramework_1.8_ju%c5%bc_poprawiony'

    ZendFramework 1.8 już poprawiony

    Dodany: maj 14, 2009, 12:30pm CEST przez matipl

    Zend FrameworkRaptem 13 dni po ukazaniu siÄ™ wersji 1.8 Zend Frameworka zostaÅ‚a opublikowana kolejna wersja – 1.8.1.
    W tym czasie udało się naprawić 68 zgłoszeń! Najważniejsze poprawki:

    • zmieniona wersja Dojo w ZF (1.2 na 1.3)
    • Zend_Loader::registerAutoload() jako alias do Zend_Loader_Autoloader
    • poprawki w Zend_Application
    • generowanie modułów i elementów wewnÄ…trz modułów (Zend_Tool)
    • usprawnienia do Zend_Amf 

    Wydaje się, że Zend powoli przystosowuje się do rynku i wypuszcza nowe wersje bez dogłębnych testów przerzucając tę czynność na zwykłych użytkowników!

    Download: Zend Framework 1.8.1

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/05/13/Zend_Framework_1.8.1_ju%c5%bc_wydany_'

    Zend Framework 1.8.1 już wydany!

    Dodany: maj 13, 2009, 6:00pm CEST przez webit
    Bardzo szybko wydano pierwszÄ… poprawkÄ™ do Zend Framework 1.8, który oficjalnie zaprezentowano dokÅ‚adnie 13 dni temu. Co ciekawe, ekipa tworzÄ…ca framework chwali siÄ™, iż w tym czasie zrobiÅ‚a aż 68 poprawek. Nachodzi mnie pytanie – cieszyć siÄ™ czy pÅ‚akać?! Nie bardzo rozumie wydawanie czego co nie jest sprawdzone dwa/trzy razy. Okazuje siÄ™, że błędy byÅ‚y [...]

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2009/05/01/Zend_Framework_1.8.0_has_been_released'

    Zend Framework 1.8.0 has been released

    Dodany: maj 1, 2009, 5:49pm CEST przez Wojciech Naruniec
    Zend Technologies yesterday announced the availability of version 1.8.0 of Zend Framework. Now you can use several components designed to provide Rapid Application Development. Developing projects is now a bit easier because you can create directory structure including botstrap, initial controllers and views by executing only one command. There are more other commands which can [...]
  • Permalink for 'Wojciech_Naruniec/2009/05/01/Mamy_prze%c5%82om__Zend_Framework_1.8.0'

    Mamy przełom? Zend Framework 1.8.0

    Dodany: maj 1, 2009, 5:22pm CEST przez Wojciech Naruniec
    Wczoraj w serwisie Zend Developer Zone ukazaÅ‚a siÄ™ informacja, że dostÄ™pny jest już Zend Framework 1.8.0. TÄ™ wersjÄ™ można nazwać przeÅ‚omowÄ… – w koÅ„cu pojawiÅ‚y siÄ™ narzÄ™dzia wspomagajÄ…ce szybkie tworzenie aplikacji (RAD). Teraz wywoÅ‚aniem jednej komendy można utworzyć praktycznie całą strukturÄ™ projektu. NajlepszÄ… drogÄ… do zapoznania siÄ™ z nowymi narzÄ™dzami może być oficjalny przewodnik Zend [...]

Mateusz Kamiński

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2009/04/23/Wydano_Zend_Framework_1.8_Beta_1_i_Ubuntu_9.04'

    Wydano Zend Framework 1.8 Beta 1 i Ubuntu 9.04

    Dodany: kwiecieñ 23, 2009, 9:00am CEST przez webit
    WÅ‚aÅ›nie ukazaÅ‚ siÄ™ Zend Framework w wersji 1.8 Beta 1. jest to kolejna wersja testowa przed finalnÄ… zapowiedzianÄ… na koniec miesiÄ…ca. Z gÅ‚ownych nowoÅ›ci: Zend_Application (wsparcie dla bootstrapu) Zend_Tool (generowanie projektów i komponentów) Zend_CodeGenerator (IMHO narzÄ™dzie nieprzydatne) Zend_Navigation (generowanie sitemap’ów i drzew linków) Zend_Reflection (rozszerzenie możliwoÅ›ci php’owego reflection) Zend_Tag (praca z tagami (etykietami)) dodatki i [...]
  • Permalink for 'Dominik_Bu__aj/2009/03/04/REST_z_wykorzystaniem_Zend_Framework'

    REST z wykorzystaniem Zend Framework

    Dodany: marzec 4, 2009, 6:42pm CET przez webit
    REST to usÅ‚uga sieciowa używana do dystrybuowania treÅ›ci – głównie – pomiÄ™dzy aplikacjami internetowymi (tzw. web service). REST nie jest jedynym dostÄ™pnym web service; innymi popularnymi usÅ‚ugami sÄ… m.in. XML-RPC oraz SOAP. Jako że REST jest prostym i lekkim protokoÅ‚em, jest on – obok XML-RPC – najczęściej wykorzystywany we wszelkiego rodzaju API (Application Programming Interface). [...]
  • Permalink for 'Dominik_Bu__aj/2009/02/19/Zend_Form_Element_Captcha___Zend_Captcha_Image_czyli_generujemy_obrazki_captcha'

    Zend_Form_Element_Captcha + Zend_Captcha_Image czyli generujemy obrazki captcha

    Dodany: luty 19, 2009, 4:59pm CET przez webit
    Użycie komponentu Zend_Form_Element_Captcha do generowania obrazków z kodem nie jest takie proste jak przedstawiono w dokumentacji frameworka. Okazuje się, że najpierw musimy stworzyć obiekt Zend_Captcha_Image, który następnie podajemy jako parametr konstruktora Zend_Form_Element_Captcha. // tworzymy obiekt Zend_Captcha_Image $captchaImage = new Zend_Captcha_Image('captchaImg'); $captchaImage->setFont('...') // pełna ścieżka do czcionki, jaka ma zostać użyta ->setImgDir('...') // pełna ścieżka do [...]
  • Permalink for 'Dominik_Bu__aj/2009/02/19/Zend_Form_i_XHTML'

    Zend_Form i XHTML

    Dodany: luty 19, 2009, 11:32am CET przez webit
    Zend_Form, mimo że bardzo sÅ‚abo udokumentowany i toporny w konfiguracji, jest przydatnym elementem Zend Framework‘a. Niestety, domyÅ›lnie generuje znaczniki HTML a nie XHTML, co uniemożliwia walidacjÄ™ kodu strony. Jest na to wyjÅ›cie. Wystarczy w pliku bootstrap.php dodać nastÄ™pujÄ…cÄ… definicjÄ™ doctype: $view = new Zend_View(); $view->setEncoding('UTF-8'); $view->doctype('XHTML1_TRANSITIONAL'); $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer($view); Zend_Controller_Action_HelperBroker::addHelper($viewRenderer); Metoda doctype (klasa Zend_View_Helper_Doctype) [...]
  • Permalink for 'Dominik_Bu__aj/2008/12/29/Zend_Framework_1.7.2'

    Zend Framework 1.7.2

    Dodany: grudzieñ 29, 2008, 5:02pm CET przez webit
    W wigilię wydana została kolejna wersja Zend Framework, oznaczona numerem 1.7.2. Jest to maintenance release, czyli wersja nanosząca jedynie poprawki do znalezionych błędów. Dostępna jest lista wszystkich naniesionych zmian, których w sumie było 88.

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2008/11/18/Zend_Framework_1.7_dost%c4%99pny'

    Zend Framework 1.7 dostępny

    Dodany: listopad 18, 2008, 10:52am CET przez matipl

    Po dÅ‚ugim czekaniu ukazaÅ‚a siÄ™ kolejna wersja frameworka dla php – Zend Framework oznaczona wersjÄ… 1.7.
    Poza połataniem dziur, doszło wiele nowości:

    • Zend_Amf z obsÅ‚ugÄ… protokołów AMF0 oraz AMF3
    • wsparcie dla edytora dijit w Dojo Toolkit
    • Zend_Service_Twitter (dostÄ™p do usÅ‚ug Twittera)
    • ZendX_JQuery w dodatkowych bibliotekach (extras)
    • metadata API w Zend_Cache
    • Google Book Search API w Zend_Gdata
    • obsÅ‚uga Open Office XML w indeksie Zend_Search_Lucene
    • poprawiona wydajność w Zend_Loader, Zend_Controller oraz komponentach serwerowych
    • Zend_Tool w inkubatorze
    • Zend_Text_Table (formatowanie tabel przy użyciu tekstu)
    • Zend_ProgressBar (paski postÄ™pu w konsoli)
    • Zend_Config_Writer (możliwość edycji plików konfiguracyjnych)
    • ZendX_Console_Unix_Process w dodatkowych bibliotekach (extras)
    • globalne parametry dla routingu
    • obsÅ‚uga formularzowego MAX_FILES_SIZE w File Transfer
    • adapter Zend_Db_Table_Select dla Zend_Paginator

    Źródło: Zend Framework 1.7.0 is now available

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/11/17/Zend_Framework_1.7_wydany'

    Zend Framework 1.7 wydany

    Dodany: listopad 17, 2008, 10:00pm CET przez webit
    Zgodnie z planem, ukazał się dziś Zend Framework w wersji 1.7. Sporo zmian zmieściło się w tej mini wersji. Do najważniejszych jednak należą: Zend_Amf z obsługą protokołów AMF0 oraz AMF3 wsparcie dla edytora dijit (Dojo Toolkit) dostęp do usług Twittera (Zend_Service_Twitter) ZendX_JQuery w dodatkowych bibliotekach (extras) metadata API (Zend_Cache) Google book search API (Zend_Gdata) poprawiona wydajność w Zend_Loader, Zend_Controller oraz [...]
  • Permalink for 'Dominik_Bu__aj/2008/11/03/Zend_Framework_1.7'

    Zend Framework 1.7

    Dodany: listopad 3, 2008, 8:48am CET przez webit
    Zend Framework 1.7 ukaże się 16 listopada. To już oficjalne. Z nowości, jakie znajdą się w nadchodzącym wydaniu, można wyliczyć: * wsparcie dla jQuery * możliwość robienia wpisów do plików konfiguracyjnych (Zend_Config_Writer) * integracja z Adobe Flex (Zend_Amf) * poprawiona zostanie wydajność
  • Permalink for 'Dominik_Bu__aj/2008/10/29/Troch%c4%99_czasu_min%c4%99%c5%82o_'

    Trochę czasu minęło?

    Dodany: pa¼dziernik 29, 2008, 8:07pm CET przez webit
    …od ostatniego wpisu na blogu. TrochÄ™ zabiegany byÅ‚em tu i tam. DziÅ› przygotowaÅ‚em porcjÄ™ lików do bardzo ciekawych artykułów / tematów. Zacznijmy od Ubuntu – nowa wersja (8.10) ukaże siÄ™ już jutro. NajnowszÄ… wersjÄ™ bÄ™dzie można Å›ciÄ…gnąć z sieci, zakupić na dvd lub zamówić na cd (za darmo). Ja już zamówiÅ‚em, pozostaje oczekiwanie na listonosza [...]
  • Permalink for 'Dominik_Bu__aj/2008/09/17/Adobe_wkracza_w_%c5%9bwiat_PHP__dzi%c4%99ki_Zend_Framework_'

    Adobe wkracza w świat PHP (dzięki Zend Framework)

    Dodany: wrzesieñ 17, 2008, 8:02pm CEST przez webit
    Zend z Adobe poinformowaÅ‚y o rozpoczÄ™ciu współpracy, która ma na celu umożliwić Å‚atwÄ… kreacjÄ™ aplikacji w technologii Flex (flash) czy desktopowych w Air. ObsÅ‚uga obu technik zostanie wprowadzona do Zend Frameworka oraz Zend’owskiego edytora php Studio for Eclipse. Jak informuje portal gazeta.pl: Zgodnie z podpisanÄ… umowÄ…, Zend Framework bÄ™dzie teraz obsÅ‚ugiwaÅ‚ Action Message Format (AMF) Flex’a, [...]

Mateusz Kamiński

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/09/04/Zend_Framework_1.6'

    Zend Framework 1.6

    Dodany: wrzesieñ 4, 2008, 7:58am CEST przez webit
    Przed kilkoma dniami oficjalnie ukazaÅ‚ siÄ™ Zend Framework 1.6. Dopracowano kilka komponentów, które byÅ‚y zaprezentowane w wersji Release Candidate 1 NowoÅ›ci i główne zmiany, to: Zend_Tool (generowanie projektu, kontrolerów z linii poleceÅ„ – wiÄ™cej) Lucene 2.3 Index File Format Support Zend_Session bazodanowy save handler Paginator Component (stronicowanie) Figlet (ASCII art – wiÄ™cej — wg mnie bez sensu) ReCaptcha Service Captcha Form Element Zend_Config_Xml (obsÅ‚uga atrybutów [...]

Mateusz Kamiński

  • Permalink for 'Mateusz_Kami__ski/2008/07/23/ZendFramework_1.6_w_drodze_'

    ZendFramework 1.6 w drodze?

    Dodany: lipiec 23, 2008, 8:14am CEST przez matipl

    22 lipca ukazaÅ‚a siÄ™ wersja 1.6 RC1 znanego frameworka dla PHP – Zend Framework.
    W 1.6 bardzo wiele nowości, m.in.:

    • obsÅ‚uga sesji w oparciu o bazÄ™ danych
    • API do obsÅ‚ugi reCaptcha
    • obsÅ‚uga dla SOAP (klient, serwer, WSDL Generation)
    • obsÅ‚uga kodowania bazy danych (obsÅ‚uga Character Set w DB Adapter)
    • Zend File Transfer (komponent do obsÅ‚ugi uploadu, w przyszÅ‚oÅ›ci downloadu)
    • Paginator Component (obsÅ‚uga paginacji)
    • nowe helpery widoku (Flash, Quicktime, Object, and Page)
    • Lucene w wersji 2.3
    • integracja z Dojo (JavaScript toolkit)

    Idzie ku dobremu…

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2008/07/22/Zend_Framework_1.6_RC1'

    Zend Framework 1.6 RC1

    Dodany: lipiec 22, 2008, 11:59pm CEST przez Wojciech Naruniec
    Dziś w serwisie Zend Developer Zone ukazała się informacja, że dostępny jest już Zend Framework 1.6 RC1. Oto lista głównych zmian i nowości. Integracja z Dojo Komponent SOAP Poglądowa wersja projektu Zend_Tool i Project Asset Management Testy jednostkowe dla kontrolerów Obsługa formatu Lucene 2.3 Zapisywanie sesji w bazie danych Komponent Paginator Obsługa tekstów Figlet (ASCII [...]

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/07/22/Zend_Framework_1.6_Release_Candidate_1'

    Zend Framework 1.6 Release Candidate 1

    Dodany: lipiec 22, 2008, 9:19pm CEST przez webit
    UkazaÅ‚ siÄ™ Zend Framework 1.6 Release Candidate 1. DziÅ›, 22 lipca 2008 roku, udostÄ™pniona zostaÅ‚a najnowsza wersja najlepszego frameworku php‘owego. Co nowego? integracja z Dojo (w tym m.in. JSON-RPC, Dojo View Helper, Dijit zintegrowane z Zend_Form i Zend_View oraz oczywiÅ›cie dołączona biblioteka Dojo) rozszerzenia SOAP (nareszcie!), w tym klient i serwer oraz bardzo prosty w obsÅ‚udze WSDL [...]

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2008/06/01/Przekierowania_w_Zend_Framework'

    Przekierowania w Zend Framework

    Dodany: czerwiec 1, 2008, 5:32pm CEST przez Wojciech Naruniec
    Ostatnio instalowałem aplikację opartą o Zend Framework na serwerze używającym oprogramowania IdeaWebServer i okazało się, że nie działają przekierowania: każda próba przekierowania za pomocą klasy Zend_Controller_Action_Helper_Redirector kończyła się błędem Internal Server Error 500. W pierwszej chwili pomysłałem że to wina serwera, ale błąd okazał się mieć źródło w samym ZF. Po sprawdzeniu nagłówków i zawartości [...]

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/05/22/Zend_Framework_i_Dojo_zostaj%c4%85_partnerami_'

    Zend Framework i Dojo zostajÄ… partnerami!

    Dodany: maj 22, 2008, 3:56pm CEST przez webit
    Matthew Weier O’Phinney podaÅ‚ do publicznej informacji, iż Zend Framework i Dojo zostanÄ… partnerami i opracujÄ… miÄ™dzy innymi kompleksowe rozwiÄ…zanie AJAX’owe dla frameworka. Ale co najważniejsze, autor wpisu zapowiada że ZF dalej bÄ™dzie bardzo łátwo użyć z innymi bibliotekami JavaScrip (jak chociażby Prototype czy jQuery). Dojo ma być dołączane do każdej dystrybucji Zend Framework, co ma [...]
  • Permalink for 'Dominik_Bu__aj/2008/05/16/Zend_Framework_1.5.2_wydany'

    Zend Framework 1.5.2 wydany

    Dodany: maj 16, 2008, 4:48pm CEST przez webit
    Dziś, z kilkudniowym poślizgiem, ukazała się kolejna wersja Zend Framework. Wersja 1.5.2 wstępnie była przewidziana do wydania w poniedziałek 12 maja. Co się zmieniło w stosunku do 1.5.1? Tylko tyle, że pozbawiono framework 49. błędów. Zend Framework, w zawsze najnowszej wersji, można pobrać z http://framework.zend.com/download

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/05/02/PHP.pl_wraca_do_gry_'

    PHP.pl wraca do gry!

    Dodany: maj 2, 2008, 4:48pm CEST
    Po sporym czasie niedostępności naszej głównej domeny, mamy w końcu okazje cieszyć się nią na nowo i to z podwojoną siłą! Nie będę opisywał całych kulis sprawy jaka zaistniała. Pokrótce, dotychczasowy właściciel nie opłacał już od sporego czasu naszej domeny i z powodów zerowego kontaktu w końcu została zablokowana. Staraliśmy...
  • Permalink for 'Tomasz_Wiktorski/2008/04/10/Prace_techniczne_na_PHP.pl'

    Prace techniczne na PHP.pl

    Dodany: kwiecieñ 10, 2008, 8:45pm CEST
    Krótka informacja. Na PHP.pl trwają prace techniczne, w związku z czym domena nie działa. Jeśli jednak ktoś by chciał się dostać na forum to istnieje tymczasowy adres: forumphp.nq.pl. Natomiast na wortal można się dostać poprzez adres: phppl.ezpublish.no

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/04/07/Zend_Form_i_upload_plik%c3%b3w'

    Zend_Form i upload plików

    Dodany: kwiecieñ 7, 2008, 8:04pm CEST przez webit
    Rob Allen przedstawił wspaniały przykład wykorzystania Zend_Form do obsługi uploadowanych plików. Jak wiadomo, Zend_Form nie posiada obsługi pól typu file. Jest to skutkiem nadal trwających prac nad dodaniem takowej obsługi do komponentu odpowiedzialnego za formularze. W artykule Rob przedstawia własną klasę rozszerzającą Zend_Form (klasa ma za zadanie stworzyć formularz). Następnie przedstawiony został przykład napisania klasy [...]
  • Permalink for 'Dominik_Bu__aj/2008/04/04/Por%c3%b3wnanie_Zend_Framework_i_Cake_PHP'

    Porównanie Zend Framework i Cake PHP

    Dodany: kwiecieñ 4, 2008, 8:20pm CEST przez webit
    Kilka dni temu znalazÅ‚em bardzo fajne, a zarazem ciekawe, porównanie dwóch frameworków – Zend Framework i CakePHP. Autor, niejaki chad, skupiÅ‚ siÄ™ na uÅ‚atwieniu wyboru odpowiedniego narzÄ™dzia do projektu. W artykule poruszyÅ‚ takie tematy jak rodzaj licencji, wymagana wersja PHP, jakość dokumentacji, wsparcie czy zasób przykÅ‚adów i tutoriali. Nie zabrakÅ‚o porównania dotyczÄ…cych wykorzystania wzorca MVC, sposobów [...]
  • Permalink for 'Dominik_Bu__aj/2008/03/29/Logowanie_z_u%c5%bcyciem_Zend_Auth_i_Zend_Form'

    Logowanie z użyciem Zend_Auth i Zend_Form

    Dodany: marzec 29, 2008, 12:48pm CET przez webit
    Matthew Weier O’Phinney w swoim blogu zaprezentowaÅ‚ bardzo ciekawy przykÅ‚ad wykorzystania Zend_Auth i Zend_Form w celu autoryzacji i autentyfikacji użytkowników. Wpis zatytuÅ‚owany “Login and Authentication with Zend Framework” opisuje wykorzystanie ww. modułów. W przykÅ‚adach zaprezentowano budowÄ™ Login kontrolera oraz klasy odpowiedzialnej za utworzenie formularza. Wpis jest bardzo ciekawÄ… lekturÄ…, którÄ… polecam każdemu użytkownikowi Zend Framework.

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2008/03/27/Liczby_ca%c5%82kowite_w_Zend_Form'

    Liczby całkowite w Zend_Form

    Dodany: marzec 27, 2008, 1:43pm CET przez Wojciech Naruniec
    W dokumentacji komponentu Zend_Form jest maÅ‚a nieÅ›cisÅ‚ość w kwestii sprawdzania poprawnoÅ›ci liczb caÅ‚kowitych i ciÄ…gów cyfr. Gdy dla wymaganego pola ustawimy walidator Int lub Digits to po wpisaniu wartoÅ›ci ’0′ otrzymamy błędny komunikat. Powodem jest automatycznie dodawany walidator NotEmpty, który na szczęście można wyłączyć za pomocÄ… metody setAutoInsertNotEmptyValidator(). Poniżej zamieÅ›ciÅ‚em przykÅ‚adowy kod. $count = new [...]

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/03/27/Zend_Framework_1.5.1_wydany'

    Zend Framework 1.5.1 wydany

    Dodany: marzec 27, 2008, 7:39am CET przez webit
    Niecałe 10 dni po wydaniu pełnej wersji 1.5 ukazała się 1.5.1. Głównym celem jest poprawienie drobnych błędów (ponad 30.). Framework w najnowszej wersji można pobrać ze strony http://framework.zend.com/download

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/03/22/Program_telewizyjny_i_Zend_Gdata'

    Program telewizyjny i Zend_Gdata

    Dodany: marzec 22, 2008, 10:21pm CET
    Od dłuższego czasu denerwują mnie internetowe programy telewizyjne. Twórcy ? zazwyczaj duże portale, bo tylko takie stać na wykupienie programów od firm je zbierających ? totalnie nie znają się na usability (bardzo popularne słowo ;) ). Nie dość że umieszczają na jednej stronie jak najmniejszą liczbę kanałów, to jeszcze serwują...

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2008/03/21/Migracja_Zend_Framework_z_1.0.4_do_1.5.0'

    Migracja Zend Framework z 1.0.4 do 1.5.0

    Dodany: marzec 21, 2008, 10:56am CET przez Wojciech Naruniec
    Migracja Zend Framework z wersji 1.0.4 do 1.5.0 byÅ‚a w miarÄ™ bezbolesna, ale jednak wymagaÅ‚a wprowadzenia kilku poprawek. Na szczęście wiÄ™kszość z nich udaÅ‚o się wprowadzić za pomocÄ… „znajdź i zamieÅ„”. 1. Wdrożenie Zend_Laout W stabilnej wersji 1.5 dostÄ™pny jest już komponent Zend_Layout, wiÄ™c czas na rezygnacjÄ™ z wÅ‚asnego rozwiÄ…zania i wdrożenie nowej klasy. Do tej [...]

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/03/17/Ju%c5%bc_jest__Zend_Framework_1.5_wydany_'

    Już jest! Zend Framework 1.5 wydany!

    Dodany: marzec 17, 2008, 5:34pm CET przez webit
    Dziś ukazała się długo oczekiwana, oficjalna, wersja Zend Framework 1.5. Z tej okazji między innymi zamieszczono na wiki tzw. QuickStart, umożliwiający szybkie zapoznanie się z funkcjami i działaniem frameworku. Dostępne są także pliki multimedialne ułatwiające zrozumienie działania Zend Framework. W końcu, całkowicie odświeżono stronę projektu. No ale przecież najważniejsze, to co w środku A zatem: nowe [...]

Wojciech Naruniec

  • Permalink for 'Wojciech_Naruniec/2008/03/17/Zend_Framework_1.5_has_been_released_'

    Zend Framework 1.5 has been released!

    Dodany: marzec 17, 2008, 3:35pm CET przez Wojciech Naruniec
    Zend Technologies today announced the availability of version 1.5 of Zend Framework. Now we can use new Zend_Form and Zend_Layout components, which make forms hadnling more easier. Another positive change is UTF-8 support in Zend_Pdf component. This missing feature has blocked use of this component in non-latin languages as Polish, Chinese or Russian. You can [...]
  • Permalink for 'Wojciech_Naruniec/2008/03/17/No_i_mamy_Zend_Framework_1.5_'

    No i mamy Zend Framework 1.5!

    Dodany: marzec 17, 2008, 3:22pm CET przez Wojciech Naruniec
    Wprawdzie Tomek byÅ‚ pierwszy, ale ten news warto powtórzyć Po kilku miesiÄ…cach oczekiwania wydanie Zend Framework w stabilnej wersji 1.5 staÅ‚o siÄ™ faktem, a wraz z frameworkiem pojawiÅ‚a siÄ™ nowa wersja serwisu internetowego – cukierkowa i bardzo przyjemna W nowej wersji mnie najbardziej cieszÄ… mnie stabilne wersje komponentów Zend_Form i Zend_Layout, Dobrym krokiem byÅ‚o poprawienie [...]

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/03/17/Finalna_wersja_Zend_Framework_1.5'

    Finalna wersja Zend Framework 1.5

    Dodany: marzec 17, 2008, 2:42pm CET
    Od kilku minut, po wielu miesiącach prac mamy kolejną wersje jednego z najpopularniejszych ostatnio frameworków. Tyma razem programiści bardzo się postarali serwując nam szereg nowych komponentów, wiele poprawek oraz udoskonaleń. Wraz z nowa wersją odświeżona została również sama witryna Zend Frameworka. Dzięki...
  • Permalink for 'Tomasz_Wiktorski/2008/03/15/Ja_ju%c5%bc_mam_w_stopce_logo_ZF_a_Ty_'

    Ja już mam w stopce logo ZF a Ty?

    Dodany: marzec 15, 2008, 10:30am CET
    Ostatnio znalazłem trochę czasu i przebudowałem swojego bloga w oparciu o Zend Frameworka. Na ogół nic się nie zmieniło, stary szablon z wordpressa został, może i na niego niedługo przyjdzie czas. Linki również nie uległy zmianie. System blogowy to stosunkowo prosta aplikacja, dlatego zrobienie wszystkiego zajęło mi 4 dni w wolnym czasie....

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/03/05/Zend_Framework_b%c4%99dzie_do%c5%82%c4%85czony_do_Ubuntu_'

    Zend Framework będzie dołączony do Ubuntu!

    Dodany: marzec 5, 2008, 10:13am CET przez webit
    Andi Gutmans ogÅ‚osiÅ‚ na swoim blogu, że Zend Framework bÄ™dzie dołączony do Ubuntu 8.04 “Hardy Heron”. Nowa wersja systemu ukarze siÄ™ w kwietniu. Cytat z postu “jesteÅ›my dumni, że bÄ™dziemy integralnÄ… częściÄ… dystrybucji Ubuntu. To ważny krok na przód, umożliwiajÄ…cy szerszej grupie osób dostÄ™p do Zend Framework…“. Na blogu dostÄ™pna jest informacja, że sam framework dotychczas zostaÅ‚ [...]

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/03/02/Zend_Layout_w_przyk%c5%82adach_oraz_nowe_helpery_widoku'

    Zend_Layout w przykładach oraz nowe helpery widoku

    Dodany: marzec 2, 2008, 7:51pm CET przez Tomasz Wiktorski
    Wszyscy długo czekali na pojawianie się komponentu odpowiedzialnego za tworzenie i zarządzanie layoutami. Jest to kolejny plus dla Zend Frameworka i uderzenie w tych którzy płakali - jaki to ZF nie jest beee, bo nawet nie ma zaimplementowanego systemu layoutów. Jak widać Zend szybko nadgania. Faktycznie przedtem trzeba było się trochę nagimnastykować żeby to wszystko [...]
  • Permalink for 'Tomasz_Wiktorski/2008/03/02/Zend_Layout_w_przyk%c5%82adach_oraz_nowe_helpery_widoku'

    Zend_Layout w przykładach oraz nowe helpery widoku

    Dodany: marzec 2, 2008, 7:51pm CET
    Wszyscy długo czekali na pojawianie się komponentu odpowiedzialnego za tworzenie i zarządzanie layoutami. Jest to kolejny plus dla Zend Frameworka i uderzenie w tych którzy płakali - jaki to ZF nie jest beee, bo nawet nie ma zaimplementowanego systemu layoutów. Jak widać Zend szybko nadgania. Faktycznie przedtem trzeba było się trochę nagimnastykować...
  • Permalink for 'Tomasz_Wiktorski/2008/02/28/Przegl%c4%85d_propozycji_ZF'

    PrzeglÄ…d propozycji ZF

    Dodany: luty 28, 2008, 3:14pm CET przez Tomasz Wiktorski
    Wydanie kolejnych wersji (1.0.4 oraz 1.5 RC1) Zend Frameworka mamy za sobą. Czas popatrzyć jakie nowe funkcjonalności mogą nas czekać w przyszłości. Listę wszystkich propozycji (proposals) możemy znaleźć na stronie wiki ZF (tym razem jest to naprawdę możliwe :] ). Jest ich naprawdę masa, jedne mniej warte uwagi, inne bardziej, które finalnie mają później szanse dostać [...]
  • Permalink for 'Tomasz_Wiktorski/2008/02/28/Przegl%c4%85d_propozycji_ZF'

    PrzeglÄ…d propozycji ZF

    Dodany: luty 28, 2008, 3:14pm CET
    Wydanie kolejnych wersji (1.0.4 oraz 1.5 RC1) Zend Frameworka mamy za sobą. Czas popatrzyć jakie nowe funkcjonalności mogą nas czekać w przyszłości. Listę wszystkich propozycji (proposals) możemy znaleźć na stronie wiki ZF (tym razem jest to naprawdę możliwe :] ). Jest...

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/02/24/Kr%c3%b3tka_przerwa_'

    Krótka przerwa?

    Dodany: luty 24, 2008, 10:12pm CET przez webit
    Pewnie w najbliższym czasie nastąpi krótka przerwa w aktualizacjach blogu (chociaż nie koniecznie ;-)), wszystko za sprawą braku czasu (pracuje nad projektem CMS dla PinkCrow Records) oraz kończę swoją stronę wizytówkę - webit.pl. Oba projekty będą moimi pierwszymi w pełni opartymi o Zend Framework. Więcej szczegółów niebawem. W wolnych chwilach pracuje nad nowym layout blogu, który [...]

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/02/22/Generowanie_formularza_na_podstawie_struktury_tabeli'

    Generowanie formularza na podstawie struktury tabeli

    Dodany: luty 22, 2008, 3:44pm CET przez Tomasz Wiktorski
    Na dziś zaplanowane jest wydanie pierwszej wersji kandydującej Zend Frameworka 1.5. Dokonano w niej sporo poprawek oraz zmian w stosunku do PR. Jak widać wszystko idzie w dobrym kierunku zmierzającym do wydania oficjalnej wersji 1.5 Ja natomiast stworzyłem na własne potrzeby kolejny dodatek. Tyma razem jest to automatyczny generator formularzy na podstawie struktury tabel z bazy [...]
  • Permalink for 'Tomasz_Wiktorski/2008/02/22/Generowanie_formularza_na_podstawie_struktury_tabeli'

    Generowanie formularza na podstawie struktury tabeli

    Dodany: luty 22, 2008, 3:44pm CET
    Na dziś zaplanowane jest wydanie pierwszej wersji kandydującej Zend Frameworka 1.5. Dokonano w niej sporo poprawek oraz zmian w stosunku do PR. Jak widać wszystko idzie w dobrym kierunku zmierzającym do wydania oficjalnej wersji 1.5 Ja natomiast stworzyłem na własne potrzeby kolejny dodatek. Tyma razem jest to automatyczny generator formularzy...
  • Permalink for 'Tomasz_Wiktorski/2008/02/17/Formularze_wielostronicowe_cz._II'

    Formularze wielostronicowe cz. II

    Dodany: luty 17, 2008, 9:10pm CET przez Tomasz Wiktorski
    Spodobała mi się zabawa z tworzeniem formularzy wielostronicowych, więc postanowiłem lekko zmienić metoda funkcjonowania, którą opisałem w poprzednim moim wpisie. Tym razem postawiłem na rozszerzenie kontrolera akcji, który będzie posiadał specjalne metody do obsługi i przetwarzania formularza. Zdecydowanie jest to o niebo lepsze rozwiązanie. Skraca ono do minimum proces obsługi. Obecnie wystarczy tylko stworzyć odpowiedni [...]
  • Permalink for 'Tomasz_Wiktorski/2008/02/17/Formularze_wielostronicowe_cz._II'

    Formularze wielostronicowe cz. II

    Dodany: luty 17, 2008, 9:10pm CET
    Spodobała mi się zabawa z tworzeniem formularzy wielostronicowych, więc postanowiłem lekko zmienić metoda funkcjonowania, którą opisałem w poprzednim moim wpisie. Tym razem postawiłem na rozszerzenie kontrolera akcji, który będzie posiadał specjalne metody do obsługi...
  • Permalink for 'Tomasz_Wiktorski/2008/02/15/Formularze_wielostronicowe'

    Formularze wielostronicowe

    Dodany: luty 15, 2008, 10:38pm CET przez Tomasz Wiktorski
    Na liście dyskusyjnej Zend Frameworka ogłoszono że 22 lutego ukaże sie pierwsza wersja kandydująca 1.5 Wersja ta będzie już z kompletem wszystkich komponentów które maja sie ukazać w wersji finalnej. Oczywiście w jej skład wchodzi mój ulubiony Zend_Form. Niestety nadal bez obsługi formularzy wielostronicowych, dlatego postanowiłem sam uzupełnić ta funkcjonalność. Jak sie okazało nie jest [...]
  • Permalink for 'Tomasz_Wiktorski/2008/02/15/Formularze_wielostronicowe'

    Formularze wielostronicowe

    Dodany: luty 15, 2008, 10:38pm CET
    Na liście dyskusyjnej Zend Frameworka ogłoszono że 22 lutego ukaże sie pierwsza wersja kandydująca 1.5 Wersja ta będzie już z kompletem wszystkich komponentów które maja sie ukazać w wersji finalnej. Oczywiście w jej skład wchodzi mój ulubiony Zend_Form. Niestety nadal bez obsługi formularzy wielostronicowych, dlatego postanowiłem sam...

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/02/14/Zend_Framework_1.5_RC1'

    Zend Framework 1.5 RC1

    Dodany: luty 14, 2008, 8:56pm CET przez webit
    Zend Framework 1.5 RC1 ukaże się 22 lutego 2008. Będzie wersją zawierającą wszystkie komponenty, jakie znajdą się w finalnej wersji. Aktualnie dostępna jest wersja 1.5 Preview. Tego samego dnia ukaże się także zbiorcza poprawka do zgłoszonych bugów Zend Framework wersji 1.0.

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/01/29/Wiki__manual__docbook___frustracja'

    Wiki, manual, docbook - frustracja

    Dodany: styczeñ 29, 2008, 2:55pm CET przez Tomasz Wiktorski
    Na poczÄ…tek, przy okazji, chciaÅ‚em powiadomić Was, że wersja 1.5.0 Zend Frameworka PR jest już oficjalnie dostÄ™pna i można ja Å›ciÄ…gnąć z http://framework.zend.com. Natomiast samo oÅ›wiadczenie przeczytamy na http://devzone.zend(…)now-available A teraz do rzeczy. Otóż nie wiem czemu ale nienawidzÄ™ wykorzystywania wiki do tworzenia czegokolwiek innego niż encyklopedii. W takich przypadkach jak wiki Zend Frameworka po prostu [...]
  • Permalink for 'Tomasz_Wiktorski/2008/01/29/Wiki__manual__docbook___frustracja'

    Wiki, manual, docbook - frustracja

    Dodany: styczeñ 29, 2008, 2:55pm CET
    Na początek, przy okazji, chciałem powiadomić Was, że wersja 1.5.0 Zend Frameworka PR jest już oficjalnie dostępna i można ja ściągnąć z [framework.zend.com]. Natomiast samo oświadczenie przeczytamy na http://devzone.zend(...)now-available A...
  • Permalink for 'Tomasz_Wiktorski/2008/01/27/Nowe_helpery_akcji'

    Nowe helpery akcji

    Dodany: styczeñ 27, 2008, 9:14pm CET przez Tomasz Wiktorski
    Do wersji 1.5 Zend Frameworka zostaną dodane dwa bardzo przydatne helpery. Mają one na celu pomóc zarządzać kontekstem poszczególnych akcji, pomocne przy żądaniach XmlHttpRequests. AjaxContext dodatkowo automatycznie ustala odpowiednie nagłówki oraz wyłącza Layouty. Dzięki temu w łatwy sposób możemy określić co ma być zwracane dla poszczególnych żądań. Dla jednaj akcji otrzymujemy możliwość zdefiniowania kilku szablonów [...]
  • Permalink for 'Tomasz_Wiktorski/2008/01/27/Nowe_helpery_akcji'

    Nowe helpery akcji

    Dodany: styczeñ 27, 2008, 9:14pm CET
    Do wersji 1.5 Zend Frameworka zostaną dodane dwa bardzo przydatne helpery. Mają one na celu pomóc zarządzać kontekstem poszczególnych akcji, pomocne przy żądaniach XmlHttpRequests. AjaxContext dodatkowo automatycznie ustala odpowiednie nagłówki oraz wyłącza Layouty. Dzięki temu w łatwy sposób możemy określić co ma...

Dominik Bułaj

  • Permalink for 'Dominik_Bu__aj/2008/01/27/Paczki_ZF_1.5'

    Paczki ZF 1.5

    Dodany: styczeñ 27, 2008, 7:50pm CET przez webit
    Na stronie Zend Framework in Action zamieszczono ciekawą informację dotyczącą paczek Zend Framework w wersji 1.5. Wersja 1.5 będzie zawierała tzw. Extras, czyli dodatkowe pakiety oprogramowane przez ZF community, ale nie supportowane komercyjnie przez firmę Zend. Co ciekawe te paczki będą musiały przejść przez dość restrykcyjny proces zezwalający na włączenie ich do frameworka. Dzięki takiemu rozwiązaniu [...]
  • Permalink for 'Dominik_Bu__aj/2008/01/26/Zend_Studio_for_Eclipse'

    Zend Studio for Eclipse

    Dodany: styczeñ 26, 2008, 9:56pm CET przez webit
    Kilka dni temu ukazała się długo oczekiwana, finalna, wersja Zend Studio for Eclipse (roboczy kryptonim Zend Neon). Bazujący na Eclipse PDT edytor PHP autorswa firmy Zend ma zastąpić, co bądź co, wysłużone Zend Studio. Wykorzystanie środowiska Eclipse nie powinno dziwić. Coraz więcej projektów i środowisk programistycznych jest opartych właśnie o tą platformę, uznawaną za jedną z [...]

Tomasz Wiktorski

  • Permalink for 'Tomasz_Wiktorski/2008/01/25/Zend_Framework_1.5_PR'

    Zend Framework 1.5 PR

    Dodany: styczeñ 25, 2008, 4:37pm CET przez Tomasz Wiktorski
    Jak można zauważyć na svn’ie dostÄ™pna jest już wersja Preview Relase 1.5 Oznacza to że prace sÄ… już na ukoÅ„czeniu. Dostarczy ona szereg nowych funkcjonalnoÅ›ci od komponentów (Zend_Form, Zend_layout), przez nowe adaptery autoryzacji (Infocard, OpenID, LDAP), helpery akcji oraz widoku, udoskonalona wersja Lucene, obsÅ‚ugÄ™ UTF-8 dla PDF’ów, skoÅ„czywszy na paru nowych web service’ach.
  • Permalink for 'Tomasz_Wiktorski/2008/01/25/Zend_Framework_1.5_PR'

    Zend Framework 1.5 PR

    Dodany: styczeñ 25, 2008, 4:37pm CET
    Jak można zauważyć na svn'ie dostępna jest już wersja Preview Relase 1.5 Oznacza to że prace są już na ukończeniu. Dostarczy ona szereg nowych funkcjonalności od komponentów (Zend_Form, Zend_layout), przez nowe adaptery autoryzacji (Infocard, OpenID, LDAP), helpery akcji oraz widoku, udoskonalona wersja Lucene, obsługę UTF-8 dla PDF'ów,...