[PHP][C#] Mikser synonimów

Często w swoich projektach wykorzystuję mechanizm generowania unikalnego tekstu za pomocą zleconych, synonimizowanych fragmentów. Problem pojawił się w momencie pisania skryptu, który by to robił w sposób automatyczny przy każdej określonej akcji.

W ten sposób powstał poniższy kod, który idealnie nadaje się przy generowaniu z jednostopniowym zagnieżdżeniem słów.

{Tutaj|W tym miejscu} {możesz|jesteś w stanie} 
{znaleźć|wyszukać} {przykładowy|wzorowy} {tekst|fragment}
 {używany|wykorzystywany} w mikserze!

(więcej…)

Scraper danych z empika

Nie tak dawno temu dostałem zlecenie napisania skryptu pobierającego dane, dla księgarni internetowej opartej o PrestaShop. Klient chciał rozszerzyć swój asortyment, natomiast nie miał ochoty wydawać pieniążków na copywriterów.

Za pomocą PHP pobraliśmy listę synonimów oraz dane dotyczące konkretnych produktów. Postanowiłem, że opublikuje część kodu odpowiedzialną za scraping danych ze strony empiku.

Całość do poprawnego działania wymaga pobrania klasy simple_html_dom.
(więcej…)

Symfony – Doctrine – Random result

Wiele razy podczas tworzenia portali opartych o Symfony zachodziła potrzeba by zrandomizować wyniki pobierane z bazy danych. Niestety doctrine w swoim standardzie nie ma wbudowanych takich funkcji jak RAND(), MAX(), MIN() czy bardzo często pożądany DAY(). Co więcej, próżno szukać zwięzłej i precyzyjnej odpowiedzi na przedstawiony problem nawet w dokumentacji Symfony i Doctrine. Na ratunek przychodzi DoctrineExtensions.

(więcej…)

#1 Jak pobrać źródło strony za pomocą cURL ?

cURL jest sieciową biblioteką programistyczną, która jest dostępna pod kilkanaście języków programowania. Obecnie prawie na każdym szanowanym hostingu znajdziemy już w domyślnie zainstalowaną obsługę cURL, do użycia wraz z PHP. Muszę powiedzieć, że cURL-a wykorzystuję dość często do realizacji licznych projektów, a niestety ciężko o materiały, które w jasny sposób pokazują jego działanie.

Dzisiaj pobierzemy kod źródłowy wybranej przez nas strony internetowej.

(więcej…)