• PHP Help PHP Coding
  • [RESOLVED] Parse error: syntax error, unexpected T_STRING, expecting T_FUNCTION in.. please help

Hi, i searched through the forum, but could't find anything.

PHP Version 5.2.9 (not 4)
When I run the following code, I get this err: Parse error: syntax error, unexpected T_STRING, expecting T_FUNCTION in.. on line 11

please help

What could it be?

<?php

define('SMALL', 0);
define('BIG',   1);

class ClientInfo {

var $flag_dirs = array(SMALL => 'assets/flags/small', BIG => 'assets/flags/big');
var $flag_ext  = 'png';

cfunction getctrybycode($code) {
	$countryArray = array();
	$input = "includes/countries.dat";
	$fd = fopen($input,"r") or die("Error: cannot open $input!");
	while ($buffer = fgets($fd,4096))
	{
		$buffer = preg_replace("/\n/","",$buffer);   //chomp()
		$pieces = explode(",",$buffer);
		$countryCode = $pieces[0]; $countryName = $pieces[1];
		$countryArray[$countryCode] = $countryName;
	}
	fclose($fd);
	return $countryArray[$code];
}


cfunction getctrybyhost($hostname) {

	return($this->getctrybycode($this->getctrycodebyhost($hostname)));
}

cfunction getctrycodebyhost($hostname) {
	return(substr(strrchr($hostname,'.'),1));
}

cfunction MaskOtherIP($IP) {

	if($IP==getenv("REMOTE_ADDR"))
		    return($IP);

			 $IP=strtr($IP,"0123456789","##########");
			 return($IP);
}

cfunction getClientIP() {
	$IP = getenv('REMOTE_ADDR');
	return $IP;
}

cfunction getClientHostname()
{
	$error = 0;
	$IP = $this->getClientIP();
	$hostname = gethostbyaddr($IP);

   if(!strcmp($hostname,$IP)) $error = 1;		// if failure, gethostbyaddr() returns the IP
	if (!$error) //if no error
	{
		return $hostname;
	}			
	//else
	return "";
}

cfunction getClientCountry()
{
	$error = 0;
	$hostname = $this->getClientHostname();
	if (!strcmp($hostname,"")) $error = 1;
	if (!$error)
	{
		$country = $this->getctrybyhost($hostname);
		return $country;
	}
	//else
  return "";
}

cfunction getClientFlag($size)
{
	$error = 0;
	$hostname = $this->getClientHostname();
	if (!strcmp($hostname,"")) $error = 1;
	if (!$error)
	{
		$country_code = strtolower($this->getctrycodebyhost($hostname));
		$file_name = $this->flag_dirs[$size] . '/' . $country_code . '.' . $this->flag_ext;
		if (is_readable($file_name))
		{
			return $file_name;
		}
	}
	//else
  return "";
}

cfunction getClientFlagHTML($size)
{
	$error = 0;
	$flag = $this->getClientFlag($size);
	if (!strcmp($flag,"")) $error = 1;
	if (!$error)
	{
		return '<img src="' . $flag . '">';
	}
	//else
  return "";
}
};

    What is "cfunction" supposed to mean? Seems like that should be the keyword [man]function[/man] instead.

      Thanks!

      That it is! Cfunction shoulb be function (without C in front of it).

      It worked! 😃

        Write a Reply...