User:Ina Centaur/PHP/k2n.php

From Second Life Wiki
< User:Ina Centaur
Revision as of 06:48, 20 January 2010 by Ina Centaur (talk | contribs) ("This is not name2Key - which Jori has already done" - comment)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

PHP Based key2Name service.

k2n.php: <php> // PHP key2Name by Ina Centaur // ------------------------- // Released under Creative Commons 3.0 // - me at ina dot centaur dot com // ------------------------- function key2Name($q){ if(strlen($q)==36){ $target_url = "http://world.secondlife.com/resident/".$q; $userAgent = 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.0.16) Gecko/2009120208 Firefox/3.0.16 (.NET CLR 3.5.30729)';

// curl it $ch = curl_init(); curl_setopt($ch, CURLOPT_USERAGENT, $userAgent); curl_setopt($ch, CURLOPT_URL,$target_url); curl_setopt($ch, CURLOPT_FAILONERROR, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_AUTOREFERER, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER,true); curl_setopt($ch, CURLOPT_TIMEOUT, 10); $html= curl_exec($ch); if (!$html) { echo "
cURL error number:" .curl_errno($ch); echo "
cURL error:" . curl_error($ch); exit; }

// parse the html into a DOMDocument $dom = new DOMDocument(); @$dom->loadHTML($html);

// grab the name on the page (between title tags in head) $xpath = new DOMXPath($dom); $hrefs = $xpath->evaluate("/html/head/title");

for ($i = 0; $i < $hrefs->length; $i++) { $href = $hrefs->item($i); $k2n = $href->nodeValue; }

return $k2n;

}else{ return 'Please enter a 36-character UUID to find the name attached to that avatar key.'; } } </php>

example: <php> <? require_once('k2n.php'); $name = name2key('INSERT 36-char UUID here'); echo $name; ?> </php>

Note: this is NOT a name2key service. [can find a name2Key here, by Jori].