get_meta_tags ne récupère que les méta-données sans balises HTML supplémentaires ou informations
Voici un code qui va chercher toutes les méta et informations sur une page Web utiliser comme vous le souhaitez pour votre code:
Vous devriez obtenir votre méta @$test["metaTags"]["description"]["html"];
dans le code ou la mise en jachère vous pouvez l'utiliser comme vous le voulez
function getUrlData($url) {
$result = false;
$contents = getUrlContents($url);
if (isset($contents) && is_string($contents)) {
$title = null;
$metaTags = null;
preg_match('/<title>([^>]*)<\/title>/si', $contents, $match);
if (isset($match) && is_array($match) && count($match) > 0) {
$title = strip_tags($match[1]);
}
preg_match_all('/<[\s]*meta[\s]*name="?' . '([^>"]*)"?[\s]*' . 'content="?([^>"]*)"?[\s]*[\/]?[\s]*>/si', $contents, $match);
if (isset($match) && is_array($match) && count($match) == 3) {
$originals = $match[0];
$names = $match[1];
$values = $match[2];
if (count($originals) == count($names) && count($names) == count($values)) {
$metaTags = array();
for ($i = 0, $limiti = count($names); $i < $limiti; $i++) {
$metaTags[$names[$i]] = array(
'html' => htmlentities($originals[$i]),
'value' => $values[$i]
);
}
}
}
$result = array(
'title' => $title,
'metaTags' => $metaTags
);
}
return $result;}
function getUrlContents($url, $maximumRedirections = null, $currentRedirection = 0) {
$result = false;
$contents = @file_get_contents($url);
// Check if we need to go somewhere else
if (isset($contents) && is_string($contents)) {
preg_match_all('/<[\s]*meta[\s]*http-equiv="?REFRESH"?' . '[\s]*content="?[0-9]*;[\s]*URL[\s]*=[\s]*([^>"]*)"?' . '[\s]*[\/]?[\s]*>/si', $contents, $match);
if (isset($match) && is_array($match) && count($match) == 2 && count($match[1]) == 1) {
if (!isset($maximumRedirections) || $currentRedirection < $maximumRedirections) {
return getUrlContents($match[1][0], $maximumRedirections, ++$currentRedirection);
}
$result = false;
} else {
$result = $contents;
}
}
return $contents;}
$test = getUrlData('http://ocsidtechnologies.com'); //Replace with your URL here
echo '<pre>';print_r($test);
ok merci, j'ai essayé votre code qui fonctionne bien :) – Ygg69
@ ShaH: Comment puis-je obtenir tous mes balises META comme catégorie sage, est-ce possible? – Rathinam
@Rathinam Je pense que le code ci-dessus répond au même code s'il vous plaît copier le code dans le système local et parcourir le fichier pour vérifier ou simplement coller le code dans phpfiddle et courir pour voir les catégories méta tags comme auteur, description, mots-clés, etc – ShaH