2 /***************************************************************************
3 Copyright (c) 2005 - 2010 Scuttle project
4 http://sourceforge.net/projects/scuttle/
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 ***************************************************************************/
22 header('Content-Type: text/plain; charset=UTF-8');
23 header('Last-Modified: '. gmdate("D, d M Y H:i:s") .' GMT');
24 header('Cache-Control: no-cache, must-revalidate');
25 require_once 'header.inc.php';
27 function getTitle($url) {
28 $fd = @fopen($url, 'r');
30 $html = fread($fd, 1750);
33 // Get title from title tag
34 preg_match_all('/<title>(.*)<\/title>/si', $html, $matches);
35 $title = $matches[1][0];
37 // Get encoding from charset attribute
38 preg_match_all('/<meta.*charset=([^;"]*)">/i', $html, $matches);
39 $encoding = strtoupper($matches[1][0]);
41 // Convert to UTF-8 from the original encoding
42 if (function_exists('mb_convert_encoding')) {
43 $title = @mb_convert_encoding($title, 'UTF-8', $encoding);
46 if (utf8_strlen($title) > 0) {
49 // No title, so return filename
50 $uriparts = explode('/', $url);
51 $filename = end($uriparts);
60 echo getTitle($_GET['url']);