Der Versuch, eine Zeichenfolge in PHP zu schreiben. Die Zeichenfolge enthält HTML-Code. Der HTML-Code enthält Javascript-Code darin. Und all das in einer PHP-Zeichenfolge.Javascript-Code innerhalb von HTML-Code in PHP-Zeichenfolge
Aktuelle Code:
$record["DESCRIPTION"] = preg_replace("/(<iframe.*<\/iframe>)/U",
'$1 <br>
<button type="button" onclick="download()">تحميل</button><script>function download() {
APP.CallSub("download", true, YouTubeGetID($1));}
function YouTubeGetID(url){
var ID = ""; url = url.replace(/(>|<)/gi,"").split(/(vi\/|v=|\/v\/|youtu\.be\/|\/embed\/)/); if(url[2] !== undefined) { ID = url[2].split(/[^0-9a-z_\-]/i); ID = ID[0]; } else { ID = url; } return ID;}
</script>', $record["DESCRIPTION"]);
Das Problem ist die Funktion YouTubeGetID()
in Berufung. Ich möchte diese Funktion mit dem PHP-Regex-Ergebnis "$1"
als Parameter aufrufen. Ich habe versucht: * YouTubeGetID($1)
* YouTubeGetID("$1")
Beide haben nicht funktioniert. Hast du irgendwelche Ideen wie das geht?
PS: Die YouTubeGetID()
Funktion funktioniert ordnungsgemäß. Ich habe es mit einer normalen Schnur YouTubeGetID("https://youtube.com/watch?v=tN_dtNinTjk")
getestet. Das Problem besteht darin, das Regex-Ergebnis $ 1 anstelle einer Zeichenfolge zu verwenden.
Haben Sie versucht, alle "für" zu tauschen und verwenden "$ 1 ......", $ Datensatz – mplungjan
http://php.net/manual/en/language.types.string.php – CD001
Ihr Code ist ziemlich ein Durcheinander. Vielleicht Formatierung hilft Ihnen, es besser zu verstehen. –