Hi!
Ich verstehe jetzt leider nur Bahnhof.
Also: Variablen werden nur in "" ausgewertet. Was in '' steht ist immer einfacher Text, auch wenn da Variablennamen drinstehen, so besteht eben der Text aus dem Variablennamen. Weiterhin ist das Einrahmen von einfachen Variablen ohne weiteren Text in "" sinnlos.
$foo = "$bar";
ist im Ergebnis genau das gleiche wie
$foo = $bar;
nur dass der Parser ein wenig weniger Arbeit hat. (Nun kann man argumentieren, dass bei "$bar" der Inhalt von $bar in einen String konvertiert wird, falls er das noch nicht ist, aber da nimmt man lieber einen expliziten Typecast ($foo = (string)$bar;), um diese Absicht deutlich von der vielfach unnötigen "$bar"-Schreibweise abzuheben.)
In deinem Fall waren erst einmal die ''-Anführungszeichen um das $datensatz->url verkehrt, und der nun zu sehende Fehler ist ein anderer Fehler. Um dessen Ursache zu finden, muss man wissen, was in $datensatz konkret steht.
Lo!