2017-10-24 2 views
0

ich diesen Code aus dem instagram einbetten auf ein Vorschaubild änderninstagram preg_replace zu bekommen Vorschau

$strings  = array('https://instagram.com/p/BanWWFtBz6O', 'BanWWFtBz6O'); 
$searchs  = array('/instagram\.com\/p\/([a-zA-Z0-9]+)/', '/([a-zA-Z0-9]+)/'); 
$replaces = array('instagram.com/p/$1/media/?size=l', 'https://instagram.com/p/$1/media/?size=l');  
$soc_instagram = preg_replace($searchs,$replaces,$strings); 

aber ich habe ein Problem mit diesem Code, zuerst, wenn ich versuche, den ersten Wert in $ Strings zu setzen https://instagram.com/p/BanWWFtBz6O es https://instagram.com/p/BanWWFtBz6O/media/?size=l ändern, die ok

das Problem sein soll, wenn ich versuche, aus dem zweiten Wert zu setzen $ Strings BanWWFtBz6O (nur die ID instagra m Post) es zu

ändern
https://instagram.com/p/https/media/?size=l://https://instagram.com/p/instagram/media/?size=l.https://instagram.com/p/com/media/?size=l/https://instagram.com/p/p/media/?size=l/https://instagram.com/p/BaQsAubg6H3/media/?size=l/https://instagram.com/p/media/media/?size=l/?https://instagram.com/p/size/media/?size=l=https://instagram.com/p/l/media/?size=l 

habe ich etwas verpassen? bitte helfen

============================================ ====================== Wie wäre es mit Youtube-Code?

$string  = array('https://www.youtube.com/watch?v=QTrPMYYGam8', 'QTrPMYYGam8'); 
$search  = array('/www.youtube\.com\/watch\?v=([a-zA-Z0-9_\-+?:]+)/', '/([a-zA-Z0-9_\-+?:]+)/'); 
$replace = array('i.ytimg.com/vi/$1/hqdefault.jpg', 'https://i.ytimg.com/vi/$1/hqdefault.jpg');  
$soc_youtube = preg_replace($search,$replace,$string); 

Antwort

1

Ein einzelner funktioniert ersetzen:

$strings  = array('https://instagram.com/p/BanWWFtBz6O', 'BanWWFtBz6O'); 
$searchs  = array('~(?:https://instagram\.com/p/)?([a-zA-Z0-9]+)~'); 
$replaces = array('https://instagram.com/p/$1/media/?size=l');  
$soc_instagram = preg_replace($searchs,$replaces,$strings); 

print_r($soc_instagram); 

Ausgang:

Array 
(
    [0] => https://instagram.com/p/BanWWFtBz6O/media/?size=l 
    [1] => https://instagram.com/p/BanWWFtBz6O/media/?size=l 
) 

für youtube die gleiche Methode verwenden:

$string  = array('https://www.youtube.com/watch?v=QTrPMYYGam8', 'QTrPMYYGam8'); 
$search  = array('~(?:https://www.youtube\.com/watch\?v=)?([a-zA-Z0-9_\-+?:]+)~'); 
$replace = array('https://i.ytimg.com/vi/$1/hqdefault.jpg');  
$soc_youtube = preg_replace($search,$replace,$string); 
+0

dieser Code wor ks perfekt, danke. kannst du mir mit youtube code helfen? Ich bearbeite bereits ersten Beitrag –

+0

ok danke, ich bearbeiten, was Sie beantworten, perfekt danke –

+0

@ PoejaNetwork: Siehe meine Bearbeitung. – Toto