Scris pe

MyComposer: IP

Since I discovered Composer for PHP the whole way of how I write code has changed. I try to use Composer as much as I can. And I always wanted to have my own packages. The first one I will present you now is filipac/ip. In a few projects that  I work on often I...

Since Php 5.4, the /e modifier in preg_replace function has been deprecated and thus the code which uses this modifier should be modified or it will stop working. How can you do that? Simple. Let’s look on the source code of mPDF. We have the following:

$html = preg_replace(‘/\{DATE\s+(.*?)\}/e’,”date(‘\\1’)”,$html );

What this does is replacing for example {DATE d-m-y} with the PHP function of date(‘d-m-y’). We should modify this line as we can see it uses the /e modifier and it won’t work anymore on php 5.5. To replace it, we use the preg_replace_callback function like this:

$html = preg_replace_callback(‘/\{DATE\s+(.*?)\}/’,create_function(‘$matches’, ‘return date($matches[1]);’),$html );

Or even better using PHP 5.5 standards:

$html = preg_replace_callback(‘/\{DATE\s+(.*?)\}/’, function($matches) { return date($matches[1]); },$html );

What this does is that it creates a anonymus function and returns the date() function with the matches.

So, the alternative method to the /e modifier is to use the preg_replace_callback function in Php 5.5 or 5.4.

Scris pe

Ruby on Rails vs PHP

Pe cand eram inca in clasa a 6-a am vrut sa invat PHP. Ma jucasem cu ceva template-uri gratuite luate de pe internet si am vazut ca imi place sa “fac site-uri” (chiar daca nu le faceam eu ci modificam ceva ce deja exista). Apoi am zis ca nu este destul atata. Tin minte si...

E tarziu in noapte, ora 00:30. Am avut de modificat ceva la un site cu care nu am legatura de obicei. Si am stat putin pana sa gasesc fisierul care trebuia editat defapt. SI de aici a venit ideea acestui post. Intrebarea pe care o pun eu si tot eu voi incerca sa ii dau un raspuns este: cum sa scrii cod original dar structurat?

Ideea e urmatoarea.. se poate sa fii un tip care nu iti place sa te conformezi tiparelor (CMS-uri, Framework-uri etc). Foarte bine, aici intervine crearea unui cod original – un CMS custom pentru un client anume, un framework personal si asa mai departe. Principiul de la care ar trebui sa pleci este nu re-inventa roata! Multi oameni au stat si au gandit care ar fi cele mai bune “tipare” de lucru cu un cod. De ce sa ignoram munca acestor oameni? Daca exista tiparul MVC (Model-view-controller), de ce sa faci o alta structura a aplicatiei tale? Am stat 5 minute ca sa gasesc un fisier care trebuia editat – era plasat intr-un director in care era foarte greu de ajuns + ca avea nume ciudat, deloc reprezentativ. Alege sa lucrezi curat! Pune intr-un folder toate bucatile de cod care au acelasi scop, da nume reprezentative fisierelor (daca un fisier este pentru “galerie foto” nu ii da numele “module41324.php” ci “galerieFoto.php”. E mult mai usor de gasit astfel.), separa logica de prezentare (controller+view) si asa mai departe.

Daca un framework asa de fain precum Yii a fost creat, de ce sa nu folosim asta? Gandeste-te: te scuteste de mult timp si scrii cod in mod mult mai organizat.

Un alt principiu si ultimul pe care o sa il zic in postarea aceasta (voi mai scrie pe aceasta tema, dar e tarziu si nu mai pot sta acum) este nu esti singur! Poate ca momentan esti singurul care administrezi un website, dar ce se intampla daca esti pus pe tusa si altul este numit noul developer? Saracul va sta 10.000 de ani pana sa inteleaga cum ai gandit tu aplicatia si/sau site-ul. Gandeste-te atunci cand scrii cod ca poate intr-o zi un alt om va folosi codul tau si trebuie sa fie cat mai usor de inteles. De aia e bine sa te supui uneori unor standarde. Pe Github, unele proiecte nu iti accepta modificarea in cod daca nu te supui unor standarde de scris cod. SI in general aceste standarde sunt peste tot cam la fel (un exemplu ar fi ca numele variabilelor sa fie scris ca si camelCase). Aici gasesti cateva standarde la care trebuie sa te supui daca vrei sa scrii cod pentru Rails. Si exemplele pot continua.

Deci ideea pe care vreau astazi sa o subliniez este: nu re-inventa roata! Aproape tot ce vrei tu sa faci a fost deja facut de altcineva intr-un mod eficient si bun. Nu fi ignorant si foloseste ceea ce deja exista in mare parte (asta nu inseamna sa nu fi original, voi mai scrie despre asta). Apoi in cele din urma cand trebuie sa predai codul tau altui programator, acesta trebuie sa fie deja familiar macar cu structura aplicatiei, daca nu si cu unele standarde de programat.

Pana data viitoare cand ne auzim pe acest subiect, ce va pot ura decat… scrieti cod eficient, structurat si corect!

 

Iosua says:
Nu inteleg ce spune

Salutare, bine ati venit pe blogul lui Tata! Sa stiti ca aici nu o sa gasiti desene, v-am avertizat!

Iosua Pacurar

Scris pe

Php – glob() sortare dupa fisiere recente

Zilele acestea lucrez la un magazin online unde bag muuulte produse, si la fiecare am poza. De unde selectam poza erau foarte multe si erau sortate dupa nume, PHP le lua din dosar folosind functia glob(). Daca vreti sa sortati fisierele din array care vin cu functia glob() procedati astfel: Definim variabila (sau probabil o...
Scris pe

Iti merge gura degeaba

Zilele acestea am fost acuzat de catre un anonim ca, vai, unul din site-urile facute de mine sunt facute cu Joomla. Si ce? Asta inseamna ca nu stiu programare? Vaai, pentru ce a fost facut Joomla? Ca sa fie site-ul mai usor de administrat. Eu am adaptat un template HTML la ce imi trebuia mie,...
Scris pe

Facebook are planuri de a cumpara twitter

Tim O’Shaughnessy, CEO la aplicatia cea mai populara dar in acelas timp cea mai enervanta aplicatie pentru unii de pe Facebook, intr-un interviu acordat pentru wired.com raspunde la intrebarea “Cele mai neplacute lucruri de pe Facebook” cu raspunsul “And three, I wish Facebook would just hurry up and buy Twitter so there’d be less noise...
Scris pe

bbPress 1.0

Cei mai multi dintre voi(care aveti blog) sunteti familiari cu WordPress, care este dezvoltat de catre Automattic. Ei bine, poate stiti, poate nu, baietii astia au si un script de forum, la fel de simplu cum este si WordPress, se numeste bbpress. A aparut acum versiunea 1.0. Ce aduce nou? O noua interfata la administrare...
Scris pe

Goto in PHP

Din PHP 5.3 se pare ca vom avea un nou feature, care mi se pare foarte, da foarte nefolositoare si un feature care te incurca. Este vorba despre “goto“. Oare ce i-or fii apucat pe dezvoltatori sa adauge chestia asta, mai ales ca era demult o chestie controversata si ne-recomandata. Eu cred ca vor sa...
Scris pe

Ultima zi

Maine este ultima zi. Nu, inca nu ultima zi de scoala. Ultima zi in care se da teza unica. Si spre deosebire de alte licee, liceul meu are si clase de gimnaziu, deci cei de la liceu ne vom bucura pe seama fratilor nostrii mai mici care dau teza. Noi trebuie sa parasim scoala cel...
Scris pe

Pman – sau revolutia 2.0

Haos total in Moldova. Revolutia e in toi. Toti romanii s-au adunat in spirit de solidaritate in principalele orase din Romania pentru ca sa fie alaturi de fratii nostrii Moldoveni. Pana acum nu prea eram noi impreuna cu Moldova, dar uite ca la situatii de genul acesta ne putem mobiliza. De tot rasul situatia din...
Copyright © 2024 toate drepturile
nu sunt
rezervate. Faceti ce vreti, e o tara libera.
Cred ca nu mai are rost sa zic, dar tema e facuta de mine cu Tailwind CSS. Gasesti codul sursa aici.
Inca folosesc WordpPess 🧡. Tema e insa custom Laravel 😎.