Hur man tar bort bilder med DOMDocument
Jag har skrivit om DOMDocument i några andra inlägg (1, 2, 3 för att dela några) men jag fortsätter att finna det användbart på olika sätt.
Kom ihåg att DOMDocument är en klass i PHP som låter oss manipulera HTML-dokumentet innan vi renderar det i webbläsaren.
Representerar ett helt HTML- eller XML-dokument; fungerar som roten till dokumentträdet.
När jag tänker på att arbeta med saveHTML
funktionen tänker jag på att behöva serialisera den nya informationen till en fil eller annan utdataström innan jag skickar den till webbläsaren.
Men det behöver vi inte göra. Det kan göras i minnet.
Exempel: I ett projekt måste jag hitta alla bildelement i ett dokument. Om bilden inte har en giltig käll-URL måste jag antingen ersätta källattributet eller ta bort det.
För detta exempel, anta följande
isValidImage
är en funktion som är ansvarig för att kontrollera om det angivna källattributet löser sig till en giltig URL,- Att jag ställer in
src
attributet till en tom sträng istället för en platshållarbild för att hålla koden enkel, - Och jag återställer resultatet till vad som än kommer att återges i mallen eller den partiella.
Jag har kommenterat koden så att den borde vara lätt nog att följa för detta exempel:
Observera att det finns flera sätt att förbättra koden ovan (som att returnera tidigt om inga bilder hittas), men syftet är att visa hur man ersätter src
attributet om URL:en inte löser sig korrekt. Alltså tar bort bilder med DOMDocument.
Om du är intresserad av hur du avgör om en webbadress är giltig kan den här artikeln vara till hjälp.