PHP التحقق من صحة يوتيوب النصي
سؤال
ولدي الموقع الذي يسمح للمستخدمين نسخ ولصق نص الفيديو مطعم ب يقدم يوتيوب وتحميله إلى قاعدة بيانات. . أريد أن أكون قادرة على التحقق من أن هذا السيناريو هو صالح يوتيوب السيناريو وليس مجرد نص عشوائي أن شخصا ما كتبته في وأعتقد أن هذا يمكن القيام به مع مباراة PREG. أي أفكار؟
المحلول
هل يمكن استخدام:
preg_match('/^<object (?<width_height>width="[[:digit:]]+" height="[[:digit:]]+")><param name="movie" value=(?<url>"http:\/\/www.youtube.com\/v\/[^&]+&hl=[[:alpha:]]{2}&fs=1")><\/param><param name="allowFullScreen" value="true"><\/param><param name="(?<asa>allowscriptaccess)" value="always"><\/param><embed src=(?P=url) type="application\/x-shockwave-flash" (?P=asa)="always" allowfullscreen="true" (?P=width_height)><\/embed><\/object>$/', $yt);
ولكن سيكون من الأفضل أن يكون منهم فقط إدخال URL (والذي هو أسهل بكثير للتحقق من صحة وتحليل)، وتوليد هذا بنفسك.
نصائح أخرى
لمطابقة عناوين URL:
$pattern = '/.*youtube.*(v=|\/v\/)([^&\/]*).*/i';
preg_match($pattern, $video, $matches)
$videoId = $matches[2];
ويمكنك بعد ذلك استخدام $videoId
التفاف إلى أي تنسيق URL يوتيوب تريد.
لا تنتمي إلى StackOverflow