在PHP中访问函数外部的数组值
我试图访问函数外部的变量,该函数为变量赋值。我认为最好的方法是将它们放入一个数组中,但似乎不知道如何在代码的其他地方访问它们。我的职能如下:在PHP中访问函数外部的数组值,php,arrays,variables,Php,Arrays,Variables,我试图访问函数外部的变量,该函数为变量赋值。我认为最好的方法是将它们放入一个数组中,但似乎不知道如何在代码的其他地方访问它们。我的职能如下: function getYouTubeMeta( $post_id ) { $video_id = get_post_meta( get_the_ID(), 'rfvi_video_id', true ); $api_key = "*********************"; $url = "https://www.googlea
function getYouTubeMeta( $post_id ) {
$video_id = get_post_meta( get_the_ID(), 'rfvi_video_id', true );
$api_key = "*********************";
$url = "https://www.googleapis.com/youtube/v3/videos?part=snippet,contentDetails,statistics&id=" . $video_id . "&key=" . $api_key;
$json = file_get_contents($url);
$json_data = json_decode($json);
$time_stamp = $json_data->items[0]->contentDetails->duration;
function duration($time_stamp) {
$di = new DateInterval($time_stamp);
return $di->format('%i:%S');
}
$youtube_duration = duration($time_stamp);
$like_count = $json_data->items[0]->statistics->likeCount;
$dislike_count = $json_data->items[0]->statistics->dislikeCount;
$view_count = $json_data->items[0]->statistics->viewCount;
$comment_count = $json_data->items[0]->statistics->commentCount;
$youtube_meta = array('like_count', 'dislike_count', 'view_count', 'comment_count', 'youtube_duration');
$result = compact($youtube_meta);
return $result;
}
如果我使用print_r$result;我得到:
Array ( [like_count] => 2954 [dislike_count] => 37 [view_count] => 271763 [comment_count] => 385 [youtube_duration] => 3:16 )
我需要能够在代码中独立地回显每个键值。大致如下:
<?php echo 'returned_like_count_value' ?>
首先将函数的结果分配给变量:
$result = getYouTubeMeta($post_id);
这将在数组中循环并回显键及其值
<?php
foreach($result as $key=>$value) {
echo "Key=" . $key . ", Value=" . $value . "<br>";
}
?>
echo$return[类似于计数]??将返回值分配给变量。所以:$output=getYouTubeMeta$post\u id;。函数返回的任何内容都将放入$output变量中。然后您可以像访问任何其他数组一样访问该返回$输出['like_count']。谢谢@JonathanKuhn。这正是我想要的答案。我现在可以访问所有值。
echo $result['like_count'];