Re: constant from variable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tanel Tammik wrote:
""Tanel Tammik"" <keevitaja@xxxxxxxxx> wrote in message news:31.A3.00596.0D7590C4@xxxxxxxxxxxxxxx
"Ashley Sheridan" <ash@xxxxxxxxxxxxxxxxxxxx> wrote in message news:1275678975.2217.83.camel@xxxxxxxxxxxx
On Fri, 2010-06-04 at 22:07 +0300, Tanel Tammik wrote:

Hi,

define('MYCONST', 'something');

$my = 'my';
$const = 'const';


is it possible to get the value of MYCONST using variables $my and $const_

Br
Tanel




I don't really see how you can? The only correlation at all is that the
two variables use the same letters combined as their values as the name
of the constant but in a different case. Variables and constants in PHP
are case-sensitive.

Why are you trying to do this anyway? Perhaps there's a better way than
what you are trying to do.

Thanks,
Ash
http://www.ashleysheridan.co.uk



<?php
define('PERFIX', 'dbperfix_');
define('DB_MYTABLE', PERFIX . 'mytable');

abstract class Database {
 private static function table_name() {
   $table_name = strtolower(get_called_class());
   return constant('DB_' . strtoupper($table_name));
 }

 public static function return_query() {
return "select * from " . static::table_name() . " where something='value'";
 }
}

class MyTable extends Database {
}

echo MyTable::return_query();
?>

i know i could just do return PERFIX . $table_name. - i'm using it that way. i was just curious if the other way is possible. might come handy some day!

Br
Tanel


this is better:

<?php
define('PERFIX', 'dbperfix_');
define('DB_MYTABLE', PERFIX . 'mytable');

abstract class Database {
  private static function table_name() {
    return constant('DB_' . strtoupper(get_called_class()));
  }

  public static function return_query() {
return "select * from " . static::table_name() . " where something='value'";
  }
}

class MyTable extends Database {
}

echo MyTable::return_query();
?>

I'm jumping a few steps here, but you may be interested in looking at this pattern :)

http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html



--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux