/*
*
* Szuka rekursywnie w głąb tablicy
*
* @param array $haystack tablica
* @param string $needle wartość
* @param string $index cecha
* @return mixed
*
*/
function recursiveArraySearch($haystack, $needle, $index = null) {
$aIt = new RecursiveArrayIterator($haystack);
$it = new RecursiveIteratorIterator($aIt);
while ($it->valid()) {
if (((isset($index) AND ($it->key() == $index)) OR (!isset($index))) AND ($it->current() == $needle)) {
return $aIt->key();
}
$it->next();
}
return false;
}
Coś, co moim zdaniem obok array_merge i array_merge_recursive obowiązkowo powinno być dołączone do PHP a nie jest…
Więcej na temat: “Rekursywne łączenie tablic bez powtórzeń”
Jest takie coś w MySQL do czego Microsoft jeszcze nie dojrzał i nie wiadomo czy w ogóle dojrzeje. A mianowicie LIMIT - element zapytania pozwalający na wyświetlenie X rekordów od rekordu Y począwszy. To cudo jest odporne na sortowanie, warunki, joiny itd. Idealna sprawa do stronicowania.
Więcej na temat: “LIMIT w MSSQL”
Oto kawałek kodu który obsługuje upload plików.
Kod html formularza jest bardzo prosty:
<form method="post" action="upload.php" enctype="multipart/form-data">
<input type="file" name="plik_upload"/>
<input type="submit" value="Upload"/>
</form>
a tak może wyglądać plik upload.php
Więcej na temat: “Obsługa upload plików”
[How to insert BLOB data into MSSQL using PHP]
Naszukałem się pół dnia jak to zrobić, więc postanowiłem się podzielić, gdyż się udało 
Więcej na temat: “PHP: jak zapisać BLOB do bazy MSSQL”
Tworząc klasy w PHP bardzo upierdliwym jest pisanie get’ów i set’ów do nich.
Więcej na temat: “Generator get’ów i set’ów w klasach PHP”
Pisząc programy w PHP często jest tak iż na szybko potrzebujemy wyrzucić na ekran wartość jakieś zmiennej. Zend_Debug daje bardzo dobre narzędzie ale ma jeden mały brak.
Zdarzało mi się przy wielu zastosowaniach Zend_Debug::dump() zapomnieć gdzie były one powstawiane. Moja modyfikacja wyświetla taką informację poza tym daje jeszcze kilka innych możliwości jak przerwanie pracy po wyświetleniu danych, 3 rodzaje prezentowanych informacji oraz zapisanie w logu tych danych.
Więcej na temat: “Zend_Debug::dump() po swojemu”
Gdy już przetestujemy i uruchomimy program często okazuje się po jakimś czasie, że jednak coś przeoczyliśmy. Wtedy bezcenne są logi z działania programu.
Więcej na temat: “Zend_Log po swojemu”
Wcześniej opisałem w artykule “Helpery w Zend Framework” jak wykorzystać wbudowane helpery a teraz przyszła pora na zrobienie swojego.
Więcej na temat: “Własne Helpery w Zend Framework”
Oto przykład jak można skorzystać z gotowych helperów (pomocników) jakie daje nam Zend Framework.
Więcej na temat: “Helpery w Zend Framework”
Ostatnio potrzebowałem wygenerować plik pdf na stronie internetowej.
Więcej na temat: “Generowanie plików PDF w Zend Framework”
Tworzenie dokumentacji do kodu jest bardzo nudne i uciażliwe. Jak można zautomatyzować ten proces?
Więcej na temat: “Tworzenie dokumentacji kodu w PHP - phpDocumentor”
Jak szybko zrobić wysłanie danych z formularz przy pomocy technologii ajax w Zend Framework?
Więcej na temat: “Wysyłanie formularzy z Zend Framerowk + mintAjax”
W php można zmniejszyć ilość kodu stosująć pewne skróty.
Więcej na temat: “Skrócony zapis w php”
Witam.
Napisałem o tym prostym “myku” w konfiguracji, ponieważ naszukałem się tego jak głupi przez dwa dni i dopiero gdzieś tam przez przypadek trafiłem na rozwiązanie.
Więcej na temat: “Apache: rewrite i virtual host nie działa”

Mantis Bug Tracker to popularne narzędzie do nadzoru nad rozwojem projektów, zgłaszania błędów itd….
Występuje w dwóch wersjach: stabilnej oraz rozwojowej. Do obu wersji dostępny jest szereg pluginów. Niestety mimo zapewnień twórców wtyczek, że na wersji rozwojowej wszystko działa “cacy” - tak nie jest. Pojawiają się błędy, nie zgadzają się nazwy kolumn w tabelach no i pluginów na wersję 1.2.* jest dużo mniej niż na stabilną 1.1.*
Niestety, wdrażając Mantisa nie zwróciłem uwagi na tę drobną niedogodność i zainstalowałem wersję rozwojową. Po kilkuset zgłoszeniach i przypisaniu kilkudziesięciu projektów zdecydowałem się migrować w dół. Zrobiłem downgrade z 1.2.0a3 na 1.1.6.
Więcej na temat: “Mantis Bug Tracker: downgrade do wersji stabilnej”
Rozwiązanie to jest proste, wygodne i możliwe do zastosowanie w każdym formularzu.
Więcej na temat: “Captacha w Zend Framework”