2010-05-14 51 views
1

您是否可以从数据库中读出一个PHP常量的名称并在php变量中使用它,以显示在菜单中使用的常量的值?如何使用从数据库中获取的PHP常量

例如这里就是我试图完成

在SQL:select menu_name AS php_CONSTANT where menu_id=1返回将L_HOME这是一个PHP配置页面中的常量的名称值。 PHP配置页面看起来像这样define('L_HOME','Home');并且在数据库调用之前被加载。 这个php的用法是$db_returned_constant,其值为L_HOME,它来自数据库调用,然后我将它放入一个字符串,如$string = '<ul><li>' . $db_returned_constant . '</li></ul>',因此返回一个字符串,看起来像$string = '<ul><li><a href="#" onclick="path_from_db">Home</a></li></ul>'

要总结一下我试图根据语言偏好

  • 查询数据库返回菜单名称,它是在一个恒定的名称做

    1. 加载配置文件配置文件在第一步加载,并且还检索在“onclick”事件中使用的menu_link。
    2. 使用php变量来保存CONSTANT的名称
    3. 将该变量放入一个字符串中,该字符串会被echo'd输出以创建显示CONSTANT值的菜单。

    我希望这样做有足够的意义......是否有可能使用这样的常量?

    谢谢。

  • +0

    这可能是因为它已经晚了,但我完全不明白这一点,对不起:)如果你想在查询中注入常量,你可以使用''SELECT menu_name AS“.constant(”php_CONSTANT “)。”哪里.....“'......不知道这是否完全回答你的问题。 – 2010-05-14 18:44:50

    +0

    我也有一个问题的理解。 你能缩小你遇到问题的具体部分吗? – arnorhs 2010-05-14 18:53:54

    回答

    2
    define('L_HOME','Home'); 
    $db_returned_constant = 'L_HOME'; // value actually retrieved from db 
    echo constant($db_returned_constant); 
    
    // will output 'Home' 
    
    +0

    这工作完美谢谢! – Ronedog 2010-05-14 19:28:00

    2

    当然,只要检索一个常量的名称到一个字符串中,然后使用constant

    +0

    谢谢你的帮助! – Ronedog 2010-05-14 19:28:47

    相关问题