6 juli, 2010
Ett problem som kan vara svårt att hitta är hantering av strtolower och encoding. Under en tid har jag jobbat med ett projekt som till viss del ligger på en Windows-plattform vi har begränsad kontroll över. Ibland blir det problem när man ska göra jämörelser av textsträngar och vill använda strtolower. Eftersom ”Mattias” inte är samma sak som ”mattias” vill man se till att båda värden man jämför bara innehåller gemener (eller versaler). Men strtolower() vill inte lira med å,ä,ö etc i UTF-8.
En lösning på problemet kan vara att ändra tecken till något annat – varför inte htmlentities(). Så här kan det se ut att förvandla ett värde till gemener och komma runt encoding problem:
1
2
3
| $value = htmlentities($value, ENT_COMPAT, 'UTF-8');
$value = trim(strtolower($value));
$value = html_entity_decode($value, ENT_COMPAT, 'UTF-8'); |
En annan lösning är mb_strtolower() om den funktionen finns tillgänlig.
Etiketter: encoding, svenska tecken, utf-8
Postat i Praktiska PHP-tips | Inga kommentarer »
30 mars, 2010
Några PHP länkar för vecka 13. Det är fantastiskt så mycket som redan finns gjort om man söker.

Etiketter: Funktioner, Länktips, syntax
Postat i Länktips | Inga kommentarer »
17 mars, 2010
Jag har upptäckt att skriva plugins är bra marknadsföring. Populära applikationer som WordPress har så många användare, och ger man dem något gratis får man trafik tillbaka. Mitt eget WordPress plugin, Random Post Box (på WordPress, och på OpenSourceEditor) gav snabbt en rejäl trafikökning. Efter några dagar när länken inte var bland nya plugins på WordPress.org så gick trafiken ned något men håller ändå en stadig ström och ger kommentarer.
Etiketter: Applikationer, marknadsföring, wordpress
Postat i Länktips, Wordpresstips | 1 kommentar »
12 mars, 2010
Jag har testat ett nytt gränssnitt till MySQL. Det heter Chive, ett modernt alternativ till phpMyAdmin. Det var rejält uppfriskande måste jag säga, ett webbgränssnitt enkelt att installera, relativt (för att vara db gränssnitt) intiutivt. Det har dock bara gått någon dag med Chive efter många år med phpMyAdmin, så jag har inte bestämt mig för att byta ut det gamla helt än. Men Chive är absolut värt att prova.
Etiketter: database, MySQL
Postat i Databas, GUI | Inga kommentarer »
11 mars, 2010
Den senaste tiden har jag diskuterat med mina kollegor om det vanligaste PHP-felet att se upp med. Vi är överens om ett av de mest irriterande, ett glömt likamed tecken i en if-sats.
När man jämför två värden i PHP kan man använda dubba lika-med tecken, så här:
1
2
3
| if ($mittnamn == 'Mattias') {
echo 'Hello Mattias';
} |
När man tilldelar värden till variabler används ett lika-med tecken:
Tänk dig då vad som händer med den här koden:
1
2
3
| if ($mittnamn = 'Mattias') {
echo 'Hello Mattias';
} |
Den jämför inte värden, den testar om det går att tilldela $mittnamn värdet ‘Mattias’. If-satsen som var till för kontrollera om variabeln $mittnamn har värdet ‘Mattias’ kommer nu alltid vara sant. Även om $mittnamn innehåller namnet ‘Vera’ kommer ‘Hello Mattias’ skrivas ut.
Eftersom det är fullt möjligt att använda en if-sats på båda visen genereras inget felmeddelande. Och är man lite trött och stirrat sig blind på samma skript länge kan det vara väldigt svårt att hitta.
Etiketter: felsökning, metoder, syntax
Postat i Praktiska PHP-tips | Inga kommentarer »
9 mars, 2010
Dagens absurditet: en nerds inssikt. Microsoft gjort en ologisk knapp där man stänger av Windows genom att klicka på Start. Nu har jag gjort en PHP-klass med den statiska metoden Login::logout('/');. Även du som inte kan PHP, kan du avgöra vad koden gör?
Etiketter: class, login, logout, microsoft
Postat i Självinsikt för PHP-nördar | Inga kommentarer »
8 mars, 2010
Trots stora snöhögar runt husknuten så närmar sig våren och den 6 april har vi en ny kursstart för php-kursen. En möjlighet för dig som vill vässa dina kunskaper under våren.

Postat i Deltagare, Kurser | Inga kommentarer »
4 mars, 2010
Några länktips om hur du kan använda Twitter och vad Facebook har för PHP-kompilator.
Posta på Twitter med PHP
På kodkodkod.se (en blogg som jag tror blir intressant att följa) finns tips om hur du kan använda Twitter i dina skript. Ligger bra i tiden med tanke på att Twitter och social media blir viktigare och viktigare i marknadsföring.
PHP compiler performance
PHPclasses.org berättar om hur Facebook arbetar med prestanda i sina applikationer. Deras compiler HipHop finns att använda, det verkar av beskrivningen att döma dock inte vara världens lättaste uppgift
Läs även andra bloggares åsikter om
prestanda,
twtter,
curl,
php
Etiketter: curl, facebook, prestanda, social media, twitter
Postat i Länktips | Inga kommentarer »
28 januari, 2010
Ibland känner jag att man glömmer funktionerna i SQL (den tekniken vi använder för kommunicerar med databasen). I mycket litteratur och annat jag ser lär man sig SELECT, INSERT, UPDATE och sedan inte mycket mer. Alla operationer görs sedan i PHP-koden. Men till exempel MySQL har många inbyggda funktioner, som kan vara snabbare att använda och som sparar mycket kod.
Jag råkade här om dagen på ett inlägg av David Walsh, ”MySQL’s REPLACE is PHP’s STR_REPLACE()”, där han ersätter text med MySQLs gunktion istället för PHPs. Senast idag kunde jag använt en när jag flytta en WordPress Mu blogg till en annan server och skulle ersätta alla sökvägar (men med backup först!)
1
| UPDATE mytable SET content = REPLACE(content,'kurswebben.se','phpkurs.se'); |
Etiketter: Funktioner, MySQL, sql
Postat i MySQL, PHP | Inga kommentarer »
16 januari, 2010
Oracle köper Sun som äger MySQL. Behöver vi rädda MySQL? Man kan fråga sig vad Oracle har för intresse av att främja utveckling av MySQL. En webbplats har skapats tillägnad MySQLs fortlevnad, och där kan du skriva på en petition. Besannas farhågorna så kanske det är läge för PostgreSQL att växa.
Mer läsning om Oracle och MySQL:
Läs även andra bloggares åsikter om
databas,
oracle,
mysql,
opensource,
postgresql
Etiketter: MySQL, opensource, oracle, postgresql
Postat i Databas | Inga kommentarer »
14 januari, 2010
Ibland lägger jag in kod i WordPress-inläggen här på bloggen. För att göra en ruta, färga koden och ev fixa radnummer använder jag tillägget WP-Syntax, som i sin tur använder sig av GeSHI (Generic Syntax Highlighter). Enkelt och smidigt, man använder pre-taggen…
<pre lang="php"> koden </pre>
Så här kan PHP se ut:
1
2
3
4
5
| <?php
function my_mirror($var) {
echo strrev($var . ' bak o fram: ' . $var):
}
?> |
Eller kanske lite Ruby
18
19
20
21
22
| class Example
def example(arg1)
return "Hello: " + arg1.to_s
end
end |
Språkstödet är omfattande.
Etiketter: plugins, syntax
Postat i Wordpresstips | Inga kommentarer »
12 januari, 2010
Du har massor att vinna på att uttnyttja din PHP-editor fullt ut. Min favorit för tillfället är Quanta Plus på Linux och Eclipse PDT på Win/Mac. Quanta har fördelen att den gör mycket lagom avancerat. Snippets (återanvändbara kodsnuttar) sparas som simpla .txt-filer, vilket gör dem lätt att överföra till andra platser och program. Dokumentationen går att ladda hem som HTML-filer och spara i rätt mapp så finns den tillgänglig i programmet. Det går att fälla ihop kodstycken, hantera projekt, söka och ersätta etc. Att den även är snabb skadar förstås inte! För riktigt snabba ändringar brukar jag ha enklare texteditorer – t.ex. gEdit på Linux, Smultron på Mac och Notepad++ på Windows.

Läs även andra bloggares åsikter om
php-editor,
mjukvara,
linux,
kod
Etiketter: eclipse, editor, program, quanta
Postat i Mjukvara | Inga kommentarer »
9 januari, 2010
Jag jobbade här om dagen med bildbeskärning, och behövde tvinga en bild att laddas om istället för att hämtas från webbläsarens cache. De vanliga tricken med att sätta headers och meta-taggar användes i skriptet, men bilden ville ändå inte laddas om direkt. Lösningen är att lägga till ett slumpat tal som querystring i bildnamnet. För att enkelt få ut slumptal använder jag funktionen rand(). Kanske inte den snyggaste av lösningar, men den fungerar.
<img src="bild.jpg?<?php echo rand(1,3000); ?>" />
Webbläsaren noterar att det är annorlunda adress vid varje besök och laddar om bilden, men ignorerar delen efter ”?”.
Läs även andra bloggares åsikter om bildhantering, skript, php, cache
Etiketter: bild, cache, gd2
Postat i Praktiska PHP-tips | Inga kommentarer »
9 december, 2009
Som webutvecklare och PHP-kodare är det kanske funktionaliteten bakom man börjar planera, men du kan ta ett extra steg med JQuery och göra nya saker möjliga. JQuery är ett javascript bibliotek som underlättar design och AJAX-funktioner. För många saker finns plugins och du behöver ofta bara några rader kod för mycket funktionalitet. Kombinera det med dina PHP-skript så kan du göra mycket.
Jag har tidigare jobbat mycket med webbgallerier, bilduppladdning etc. och tycker därför många av JQuerys bildfunktionerna verkar intressant. Här om dagen arbetade jag kort med JCrop som är ett plugin för att beskära bilder. Det naturliga är förstås att sedan spara bilden man beskurit, men för mitt test valde jag att skriva ut den direkti webbläsaren. Prova gärna att beskära mina blåsippor
Mer exempel och instruktioner om hur du kan beskära bilder hittar du på JCrops hemsida.

Beskär bilder med JCrop
Etiketter: bildhantering, javascript, jquery
Postat i AJAX | Inga kommentarer »
2 december, 2009
Att överta andras kod är alltid en intressant uppgift. Vi tänker alla lite olika, har våra lösningar och egenheter. Du lär dig alltid något. Där finns alltid något att kämpa med, någon att svära över och någon aha-upplevelse. Det är ungefär som att lära känna människor.
Ett sätt är att börja där webbläsaren börjar och följa skriptets väg. Vad händer när index.php laddas? Följ ”stigen” och se vad som laddas, vilka funktioner som körs etc. Och hoppas på bra kommantarer
Etiketter: dokumentation, projektarbete, teamwork
Postat i Självinsikt för PHP-nördar | Inga kommentarer »
30 november, 2009
Söker du jobb som webbprogrammerare – var beredd att testa dig med fizzbuzz. Visste du att många som söker programmeringsjobb inte kan koda alls? Kanske är det dags att börja posta lite utmaningar här
Ge mig ett svar på detta (via blogg eller kommentar):
- Gör ett skript som skriver ut talen 1 till 100.
- För varje tal delbart med 3 skriv ut ”fizz”.
- För varje tal delbart med 5 skriv ut ”buzz”.
- För varje heltal delbart med både 3 och 5 skriv ut ”fizzbuzz”.

Etiketter: fizzbuzz, jobbsök, självinsikter, självtest
Postat i Utmaning | Inga kommentarer »
18 november, 2009
Du som varit inne här tidigare kanske noterar att vi har ny design. Den banar vägen för en hel del förändringar som dyker upp här varefter. Men först och främst ett ansiktslyft – jag hoppas det känns som en förbättring?

Läs även andra bloggares åsikter om
utbildning,
php,
blogg,
wordpress,
layout,
design
Etiketter: layout, wordpress
Postat i Bloggen | Inga kommentarer »
12 oktober, 2009
Jag har hittat ett sätt att dela kod online, med Codepad.org – mycket bra om du snabbt vill visa för någon och få en kort adress. Min egen kodsnutt blev en kort bit från ett WordPress-tema, där jag hämtar en loop med poster för en andra listning (t.ex. om man hämtar inlägg till två kolumner). Codepad kan ta flera tekniker – C, Ruby, C++, Perl, Python m.fl. Den naturligaste för mig är förstås PHP
Så här enkelt kan man dela kod online med Codepad. Jag fick förstås ett fel eftersom koden är tagen ur sitt sammanhang. En skärmdump…

Tack till Bengt för tipset.
Etiketter: projekt, samarbete, team
Postat i Länktips | Inga kommentarer »
10 oktober, 2009
Jag använder alltid kommentarer och följer phpDoc , men till vis del formas kod efter humör. När jag är mer stressad och har mycket att tänka på är jag också mer benägen att dela upp koden med tydliga block skiljda åt av tomma rader och t.ex. /***************
Ett exempel:

Annars blir det mer kompakt. Egentligen tycker jag koden ska förklara sig själv men jag brukar följa upp med kommentarer i alla fall, dels för att följa phpDoc och kunna använda applikationen, men jag tycker också det är lite enklare att se koden i färgat skick om koden delas upp av kommentarernas färg. Det finns något för blicken att stanna upp vid.
Hur skriver du dina kommentarer?

Tips:
Sådana här saker är ett evigt diskussionsämne som kan rör upp oss nördar
Nedan hittar du några andras tankar om kommentering av koden. Söker du på forum eller Google Code Search hittar du säkert mycket mer.
Läsning
Etiketter: kodformat, kommentarer, självinsikter
Postat i Okategoriserade | Inga kommentarer »