2016-06-22 1 views
0

이전에 정의 된 PHP 값 $ video_url을 배열 구성원 중 하나로 삽입하는 데 문제가 있습니다. 여기에 코드 :배열 구성원으로 PHP 값을 삽입 하시겠습니까?

$video_url= "[[+virtual_tour]]"; /* [[+virtual_tour]] is MODX placeholder which contains first video url */ 

echo $video_url; /* for test reasons. Outputs https://youtu.be/9bZkp7q19f0 */ 

$url = array(
'$video_url', /* URL of the first video */ 
'https://www.youtube.com/watch?v=e-ORhEE9VVg' /*URL of the second video */ 
); 
// Extracts the YouTube ID from various URL structures 
foreach ($url as $value) { 
    if (preg_match('%(?:youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i', $value, $match)) { 
     $id = $match[1]; 
echo $id; /* outputs only ID of second video, but not first */ 
    } 
} 

그래서 나는 $ video_url을 배열에 삽입하여 뭔가를 가지고 있습니다. 감사. $video_url 따옴표없이

답변

2

시도 :

$url = array(
    $video_url, /*URL of the first video**/ 
    'https://www.youtube.com/watch?v=e-ORhEE9VVg' /* URL of the second video */ 
); 

단일 $url[0]의 값이 그대로 $video_url입니다 의미 do not interpolate 문자열을 인용한다.

또한 PHP에서 주석으로주의하십시오. #이 아닙니다.

+0

따옴표없이 시도하면 동일한 결과가 표시됩니다. – MyMadWeb

+0

의견을 수정합니까? '#'을 제거하고'/'를 추가하십시오. 내부에 무엇이 있는지를'var_dump ($ url)'할 수 있습니까? –

+0

나는 (그리고 원래 게시물에) 댓글을 수정했습니다. (2) { [0] => 문자열 (17) "https://youtu.be/9bZkp7q19f0" [1] => 문자열 어레이 (43 : 여기 을 위해서 var_dump ($의 URL) 결과) "https://www.youtube.com/watch?v=e-ORhEE9VVg" } – MyMadWeb

관련 문제