login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Trage [img] parser

Offline Voldemort - 21/02/2007 15:38
Avatar van VoldemortPHP ver gevorderde Beste,

Ik gebruik (zoals velen) een BB-code parser op m'n website. Met de img-tag heb ik dit kunnen maken (na wat hulp van hieruit):

- Automatisch verkleinen (zonder lelijke verrekkingen) naar gelang een gegeven breedte.
- Weergeven waar een img tag staat met een image die niet bestaat.

Alleen heb ik nu deze problemen:

- @getimagesize wil de errors bij onbestaande images niet onderdrukken (zowel lokaal als online niet, (Linux systemen met PHP 4.4.4)).
- De code is traag (2 seconden als de img-tag niet geparst moet worden, maar de andere BB-code wel. 20 tot 30 seconden als de img-tag en de rest van BB-code wel geparst moet worden). Dit is enkel als er image's geparst moeten worden.

De code die de img-tag verwerkt:

http://www.plaatscode.be/4323/


Kent er iemand de oplossingen voor deze 2 problemen?

9 antwoorden

Gesponsorde links
Offline Ibrahim - 21/02/2007 15:48
Avatar van Ibrahim PHP expert Voor de snelheid:

kan het niet liggen aan het feit dat hij images van andere sites afhaalt en dat die server bijvoorbeeld sloom is ?
Offline Rik - 21/02/2007 15:56 (laatste wijziging 21/02/2007 15:57)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Ik heb je code local staan, maar hier werkt hij prima... 

Heb je een plaatje waarbij hij zo lang duurt?

Edit:
Windows PHP 5.2.1
Offline Ibrahim - 21/02/2007 15:59 (laatste wijziging 21/02/2007 15:59)
Avatar van Ibrahim PHP expert jah dat heb ik ook, bij mij werkt het ook prima (zelfde server als boukefalos)

@boukefalos: volgens mij heb ik nog nooit van zo'n windows versie gehoord Windows PHP
Offline Rik - 21/02/2007 16:05
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Je gebruikt (.*?), ik kan me voorstellen dat als je een hele lap tekst door je functie haalt en als je helemaal bovenaan en onderaan een plaatje hebt staan dat hij dan alles gaat backreferencen.

Maar dat zal toch niet zo lang duren? En anders zou je wss hetzelfde probleem moeten hebben met andere tags...

@siliecom
Zou wel leuk zijn windows PHP! 
Offline Ibrahim - 21/02/2007 16:55
Avatar van Ibrahim PHP expert Inderdaad, zolang kan een functie niet duren... Misschien toch maar eens een andere server proberen en kijken of het daar ook zo lang duurt ?

@boukefalos
jah 
Offline Voldemort - 23/02/2007 18:15
Avatar van Voldemort PHP ver gevorderde 1) Er zijn plaatjes afkomstig van photobucket.com. Als ik naar het url suft gaat het snel, maar met die functie op m'n site niet. Zowel lokaal als online.

Probeer dit eens te doen met mijn parser:

  1. [img]http://i76.photobucket.com/albums/j40/mibsie/siteavater34.gif[/img][img]http://i76.photobucket.com/albums/j40/mibsie/83716.gif[/img][img]http://i76.photobucket.com/albums/j40/mibsie/27032.gif[/img][img]http://i76.photobucket.com/albums/j40/mibsie/6502.gif[/img][img]http://i76.photobucket.com/albums/j40/mibsie/0ece969a.gif[/img][img]http://i76.photobucket.com/albums/j40/mibsie/thsex.jpg[/img]


Dan laadt ie er al wat langer over. Naarmate er meer plaatjes komen, duurt het langer. Dus kan mijn code sneller?

2) Waarom werkt die @ bij getimagesize niet (zowel lokaal als online werkt die niet)?
Offline Voldemort - 24/02/2007 15:26
Avatar van Voldemort PHP ver gevorderde @Holla: Kan je misschien ontopic blijven?

Is er niemand die kan helpen?
Offline Ibrahim - 24/02/2007 15:40
Avatar van Ibrahim PHP expert ja, als het bij ons wel werkt en bij jou niet, dan kan er niets anders dan aan de server liggen 
Offline Voldemort - 02/04/2007 10:21 (laatste wijziging 04/04/2007 14:14)
Avatar van Voldemort PHP ver gevorderde Ik heb me er even in verdiept en het ligt aan die getimagesize. Zonder getimagesize (ff als commentaar gezet, ik kreeg wel errors (logisch als je wat weglaat dat nodig is)) laadt de pagina heel goed. Volgens de commentaar op de getimagesize pagina in de php.net manual komt dit enkel met url's voor. Daar stond als oplossing:

Uploaden, info opzoeken en verwijderen.

1) Maar als een site populair wordt (vele bezoekers per dag), dan zal ik toch ooit in de problemen komen met de diskspace? Of is dit toch een goede manier?

2) Is er geen andere functie die me de breedte en hoogte van een image kan geven die toch snel is met url's?

Omdat ik wat had geëxperimenteerd met de code (ik dacht dat het aan de preg_match_all lag) is m'n code nu veranderd:

http://www.plaatscode.be/4842/

Dit is mijn veranderde code die werkt (alleen bovenstaand probleem heb ik). Weet iemand daarvoor een oplossing?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.197s