我在下面有数组。
$a=[
[id] => 18162876
[name] => phpuG4fhx
[type] => Video
[created] => 2016-02-11T16:55:54+00:00
[updated] => 2016-02-11T16:55:54+00:00
[duration] => 14.975
[hashed_id] => uzyng792la
[description] =>
[progress] => 0
[status] => queued
[thumbnail] => Array
(
[url] => https://embed-ssl.wistia.com/deliveries/c2b1eb4bdf6f872fb9da416994973a5358b31868.jpg?image_crop_resized=200x120&video_still_time=7
[width] => 200
[height] => 120
)
[account_id] => 410090];
因为我只需填充[hashed_id]
和[thumbnail]
。如何使用PHP?谁能帮助我?
答案 0 :(得分:2)
不完全确定你在问什么,但......
如果要访问数组的元素,可以使用以下格式:
$array[$key]
对于您的示例,它将是:$a['hashed_id']
如果您想过滤数组,使其仅包含hashed_id
和thumbnail
,那么您可以执行以下操作:
$filteredArray = [];
$filteredArray['hashed_id'] = $a['hashed_id'];
$filteredArray['thumbnail'] = $a['thumbnail'];
然后你有一个只包含hashed_id
和thumbnail
的数组。
如果这回答了你的问题,那很好;如果不是,你可能想要在你过滤掉之后澄清它是什么。你的阵列。你的预期结果是什么等?
答案 1 :(得分:2)
$arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4];
var_dump(array_filter($arr, function($k) {
return ($k == 'a') || ($k == 'b');
}, ARRAY_FILTER_USE_KEY));
或使用:
如果你使用PHP> = 5.6,你现在可以设置一个标志来过滤数组键而不是数组值:
$allowed = ['foo', 'bar'];
$filtered = array_filter(
$my_array,
function ($key) use ($allowed) {
return in_array($key, $allowed);
},
ARRAY_FILTER_USE_KEY
);