jorgis Skrevet 23. januar 2007 Del Skrevet 23. januar 2007 Mhm.. Alle programmeringsspråk burde støtte UTF-8! 7777472[/snapback] PHP6 skal bruke UTF-16 internt. Lenke til kommentar
Beethoven Skrevet 23. januar 2007 Del Skrevet 23. januar 2007 PHP6 skal bruke UTF-16 internt. 7785678[/snapback] Dissa UTF greiene er fremmeord for meg, men hva slags fordeler bringer dette? Lenke til kommentar
Vindstille Skrevet 23. januar 2007 Del Skrevet 23. januar 2007 Dissa UTF greiene er fremmeord for meg, men hva slags fordeler bringer dette? 7785724[/snapback] Tegnsettet har støtte for de fleste typer tegn (også asiatiske), så man kan bruke det på sider som hvor flere typer skriftspråk blir benyttet, i tillegg til at man slipper slipper problemet med å velge riktig tegnsett. Lenke til kommentar
9001 Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Hrm Er det mulig å finne ut hvilken linje som kalte en funksjon uten å kalle funksjonen med __LINE__ som argument? Lenke til kommentar
j-- Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Vil lære meg OOP, men trenger noen forslag på gode bøker som omhandler dette (da gjerne på engelsk). Jeg har aldri drevet med OOP, men forstår at jeg burde lære meg det. Forslag til gode bøker? Lenke til kommentar
MC2 Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Hrm Er det mulig å finne ut hvilken linje som kalte en funksjon uten å kalle funksjonen med __LINE__ som argument? 7787965[/snapback] Jeg spurt om det noen sider tilbak, og fikk vite at man kan bruke debug_backtrace https://www.diskusjon.no/index.php?showtopi...dpost&p=7528423 Lenke til kommentar
jorgis Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Om formålet er error-håndtering, gjør du best i å bruke en custom error handler. Da får en automatisk inn linjenummer som parameter. Lenke til kommentar
PHPdude Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Om formålet er error-håndtering, gjør du best i å bruke en custom error handler. Da får en automatisk inn linjenummer som parameter. 7788396[/snapback] Om formålet er error-håndtering gjør du best i å bruke Exceptions. Da får du alt du trenger på en praktisk og ryddig måte. Er klar over at dette er smak og behag til en vis grad, men det er ikke uten grunn at Exceptions er de-facto måten og håndtere feil på uansett språk. Nå har jo exceptions i PHP det problemet at PHP internt for det meste bruker et annet system. Selv har jeg ihvertfall fått en enormt forenklet errorhåndtering med exceptions. Lenke til kommentar
jorgis Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Sorry, exceptions er selvfølgelig beste måten å løse problemer _lokalt_ i koden. Jeg er blitt for vant med å måtte støtte PHP4, så jeg har ikke tøyset for mye med exceptions enda, men for håndtering av direkte kodefeil er vel ikke exceptions beste måten å gå? Exceptions kan vel ikke håndtere parse errors, notices eller warnings som PHP sender ut? Lenke til kommentar
Ernie Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Om formålet er error-håndtering, gjør du best i å bruke en custom error handler. Da får en automatisk inn linjenummer som parameter. 7788396[/snapback] Om formålet er error-håndtering gjør du best i å bruke Exceptions. Da får du alt du trenger på en praktisk og ryddig måte. Er klar over at dette er smak og behag til en vis grad, men det er ikke uten grunn at Exceptions er de-facto måten og håndtere feil på uansett språk. Nå har jo exceptions i PHP det problemet at PHP internt for det meste bruker et annet system. Selv har jeg ihvertfall fått en enormt forenklet errorhåndtering med exceptions. 7790806[/snapback] De facto standard, og det uannsett språk? Nå må du gi deg her. Snakker vi om java så skal jeg være helt enig (da blir man jo påtvunget det nærmest på samme måte som OOP), men at det er den "allment" foretrukkne metoden andre steder blir litt vel drøyt etter min mening (eller har du kanskje noe kilder på det?). Det finnes flere språk uten exception hvor C og Perl er de to aller mest kjente, og disse står for en ikke ubetydelig del av all programmeringen i verden. Så skal man tenke på at langt fra alle lever så snevert som i java-verden. Faktisk, noen språk gir programmereren noe så sjokkerende som valg ... Kort sagt: C bruker det ikke, Perl bruker det ikke, i PHP bruker langt fra alle det og det samme gjelder mest sannsynligvis C++ også. Dette er sannsynligvis over 1/3-del av all programmeringen i verden. ... og det var før jeg begynner med hvor mye exception oppfordrer til latmannsprogrammering og feil i programvaren (Nei, exceptions er nok ikke bare utelukkende positivt). Lenke til kommentar
genstian Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Leste en statistikk tabel der kun 1/5 av hobbyprogrammererne brukte Exceptions. Skal se om jeg klarer og finne den igjen. Lenke til kommentar
Peter Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Exceptions er unntak, ikke feilhåndtering. Meningen med Exceptions er å kunne sende problemet utover til man når et punkt der man kan håndtere det. Ofte vet ikke en funksjon hva man vil gjøre når en feil oppstår, dermed sender den feilen oppover i hierarkiet til man når et sted der feilen kan håndteres (try-blokk) Lenke til kommentar
PHPdude Skrevet 24. januar 2007 Del Skrevet 24. januar 2007 Sa det med exceptions litt for kødd også da... Men å kalle det for defacto uansett språk var vel litt drøyt ja, dog er det jo veldig utstrakt brukt av mange i vertfall de store scriptspråkene At bare 1/5 "hobbyprogrammere" bruker exceptions forundrer meg ikke i det hele tatt, de fleste "hobbyprogrammere" aner vel knapt hva det er og enda mindre hvilke fordeler (eller ulemper) det bringer, men nå mener jeg blant de som kan språket inn og ut og som har gjort et bevisst valg om eventuell bruk av exceptions ut i fra kunnskap/behov og ikke uvitenhet. Nazgul: Exceptions er exceptions (trenger ingen oversettelse...) og er veldig greit å ha med å gjøre når feilen skal håndteres, du kan velge på hvilket nivå du vil håndtere den og det følger med et backtrace API og integreres godt i OOP. Mye mer praktisk enn å sette opp en funksjon på globalt basis som skal motta alt av feil. I hvilken grad exceptions innbyr til "latmannsprogrammering" kan jo diskuteres, men vis alternativet er å putte if-tester i koden både her og der bare for feilhåndteringen sin skyld så vil jeg kalle det for "kløneprogrammering". Har f.eks sett veldig mange som konstant putter alt av dbquery-funksjoner i en if-test for å sjekke om noe går gærent, med exceptions kan man spare seg alle disse if-testene og samtidig snappe opp feil som teoretisk kan oppstå. Og sånne if-tester blir jo gjerne etterfulgt av "else" og da blir det fort til et hoppløst spindelvev hvor store deler av koden ikke har det spor for seg i å utføre den oppgaven som var meningen. Lenke til kommentar
Ernie Skrevet 25. januar 2007 Del Skrevet 25. januar 2007 (endret) Sa det med exceptions litt for kødd også da... Men å kalle det for defacto uansett språk var vel litt drøyt ja, dog er det jo veldig utstrakt brukt av mange i vertfall de store scriptspråkene 7793948[/snapback] Begynte å lure litt Uannsett er det nok iallfall svært utbredt i java. I hvilken grad exceptions innbyr til "latmannsprogrammering" kan jo diskuteres, men vis alternativet er å putte if-tester i koden både her og der bare for feilhåndteringen sin skyld så vil jeg kalle det for "kløneprogrammering".Har f.eks sett veldig mange som konstant putter alt av dbquery-funksjoner i en if-test for å sjekke om noe går gærent, med exceptions kan man spare seg alle disse if-testene og samtidig snappe opp feil som teoretisk kan oppstå. Og sånne if-tester blir jo gjerne etterfulgt av "else" og da blir det fort til et hoppløst spindelvev hvor store deler av koden ikke har det spor for seg i å utføre den oppgaven som var meningen. 7793948[/snapback] Altså, klart, exception kan føre til mye positivt forutsatt at det blir gjort riktig, men det kan også føre til problemer. try { file_open(filename) file_write(filename, data) file_close(filename) } catch (FILE_ERROR) { print("Sorry, can't save.") } Koden over kan få systemet til å krasje, og det er ikke helt åpenbart for alle vil jeg tro. Hva er så feilen? Jo, sett at filen bare er lesbar. Da vil den krasje når den skal skrive, men systemet vil fortsette å fungere. Problemet er bare det at filen fortsatt er åpen og hva skjer når OSet ikke kan allokere flere filpeker? Jo, systemet krasjer. Videre er det alt for mange som har den holdningen at når de ser en feil så løser de den ikke, de bare slenger inn litt exception og håper på det beste med det resultatet at ting funker en stund og plutselig står alt dønn stille. En siste ting er at man strengt tatt ikke alltid trenger exception. Skal du til en spesiell butikk e.l og du veit ikke om den er oppe så går du forhåpentligvis ikke dit direkte, du ringer kanskje og hører om de fortsatt er oppe. Med andre ord, hvorfor forsøke å kjøre kode med åpenbart idiotiske parametere når man kan sjekke det på forhånd. Endret 25. januar 2007 av Ernie Lenke til kommentar
blacktower Skrevet 25. januar 2007 Del Skrevet 25. januar 2007 Problemet er bare det at filen fortsatt er åpen og hva skjer når OSet ikke kan allokere flere filpeker? Jo, systemet krasjer. Veeeel, det er ikke exceptions som er problemet her, bare bruken. Vi kan for eksempel gjøre: try { file_open(filename) file_write(filename, data) } catch (FILE_ERROR) { print("Sorry, can't save.") } finally { file_close(filename) } Uansett er det jo slikt man har closures til . begin File.open('hello','w') {|file| file.write 'Hi'} rescue Errno::EACCES => msg puts msg end Lenke til kommentar
MC2 Skrevet 18. februar 2007 Del Skrevet 18. februar 2007 Poster her i forsøk på å få igang puben igjen. Hvilken er den beste måten å hente filer (ikke store filer ~10kb) fra andre servere via http protokollen? fopen, file_get_contents, curl eller fsocket funksjonene? fopen og file_get_contents er jo enklest, men de fungerer bare hvis wrappers er aktivert. Curl er ikke alltid installert på diverse servere, så fsocket? Noen som har noen inspill? Lenke til kommentar
jorgis Skrevet 18. februar 2007 Del Skrevet 18. februar 2007 (endret) Poster her i forsøk på å få igang puben igjen. Hvilken er den beste måten å hente filer (ikke store filer ~10kb) fra andre servere via http protokollen? fopen, file_get_contents, curl eller fsocket funksjonene? fopen og file_get_contents er jo enklest, men de fungerer bare hvis wrappers er aktivert. Curl er ikke alltid installert på diverse servere, så fsocket? Noen som har noen inspill? 7970586[/snapback] De gangene jeg ikke har kunnet bruke fopen/file_get_contents pga. allow_url_fopen satt til disabled, har jeg brukt fsock og fgets. Funker ganske fint, egentlig, men som alle operasjoner over HTTP er det ganske mye latency involvert. Om det er mulig å cache, bør du gjøre det. Endret 18. februar 2007 av jorgis Lenke til kommentar
Anders Moen Skrevet 18. februar 2007 Del Skrevet 18. februar 2007 Jeg har lagd en webcrawler til en søkemotor (den har egentlig en ny side nå), siden det ikke går an å bruke full url i f. eks file_get_contents. Derfor måtte han andre som er med på prosjektet få et subdomene hos en fyr han kjenner (tror jeg det var). Hehe... Så siden jeg lagde den hos Hotserv.dk så er det kommet 34 sider inn (folk som har lagt inn automatisk), og hos han andre (lagde ferdig crawleren i dag), har det kommet ca...MANGE! Scrollbaren kunne vel ikke vært mindre, hehe... En lang lang lang liste nedover. Regner med at han (eller jeg), putter på slik pagination på den sida. Lenke til kommentar
Garreth Skrevet 19. februar 2007 Del Skrevet 19. februar 2007 (endret) Er det noen måte å bare skrive det første ordet i en tekst string? Har dette scriptet nå, men det begrenser bare antall bokstaver: $show = $categories[$i]->getName(); $length = 50; // hvor lang skal strengen vaere? $show = rawurldecode($show); // dekode strengen din if (strlen($show) > $length) {$trailing = "...";} // sjekker lengde foer begrensning $show = substr($show,0,$length); // begrense til $length bokstaver $show = ucfirst($show); // formatering if (!empty($trailing)) {$show .= $trailing;} // evt. legg til $trailing Edit: Fant et script selv: $txtarray = explode(" ", $categories[$i]->getName()); $antallord = count($txtarray); $kutt = 1; if ($antallord > $kutt) { $txtarray = array_slice($txtarray, 0, $kutt); } $testtext = implode(" ", $txtarray); Endret 19. februar 2007 av Garreth Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå