get_headers
http_build_query
URL Functions
PHP Manual

# get_meta_tags

Extracts all meta tag content attributes from a file and returns an array

### Description

array get_meta_tags ( string `$filename` [, bool `$use_include_path` = false ] )

Opens `filename` and parses it line by line for <meta> tags in the file. The parsing stops at </head>.

### Parameters

`filename`

  The path to the HTML file, as a string. This can be a local file or an URL.

  Example #1 What get_meta_tags parses

      <meta name="author" content="name">
      <meta name="keywords" content="php documentation">
      <meta name="DESCRIPTION" content="a php manual">
      <meta name="geo.position" content="49.33;-86.59">
      </head> <!-- parsing stops here -->

  (pay attention to line endings - PHP uses a native function to parse the input, so a Mac file won't work on Unix).
`use_include_path`

  Setting `use_include_path` to `TRUE` will result in PHP trying to open the file along the standard include path as per the include_path directive. This is used for local files, not URLs.

### Return Values

Returns an array with all the parsed meta tags.

The value of the name property becomes the key, the value of the content property becomes the value of the returned array, so you can easily use standard array functions to traverse it or access single values. Special characters in the value of the name property are substituted with '_', the rest is converted to lower case. If two meta tags have the same name, only the last one is returned.

### Changelog

Version | Description
--- | ---
4.0.5 | Support for unquoted HTML attributes was added.

### Examples

Example #2 What get_meta_tags returns

`<?php
// Assuming the above tags are at www.example.com
$tags = get_meta_tags('http://www.example.com/');
// Notice how the keys are all lowercase now, and
// how . was replaced by _ in the key.
echo $tags['author']; // name
echo $tags['keywords']; // php documentation
echo $tags['description']; // a php manual
echo $tags['geo_position']; // 49.33;-86.59
?>`

### Notes

> Note:

> Only meta tags with name attributes will be parsed.

### See Also

- htmlentities
- urlencode