Php 使用变量访问定义内容
这可能是不可能的,但我想知道是否可以使用变量的值输出define的内容 像这样:Php 使用变量访问定义内容,php,variables,Php,Variables,这可能是不可能的,但我想知道是否可以使用变量的值输出define的内容 像这样: define("SEO_HOME", "Home name"); $var="SEO_HOME"; echo $var 这将打印课程外的“SEO_HOME”。如何让它打印“Home name”(使用变量$var) 编辑:更正定义 编辑: 我的所有问题,我将编辑的站点使用定义来标识所有页面,例如: define("CONTACT_PAGE","Please contact us"); define("INFO_PA
define("SEO_HOME", "Home name");
$var="SEO_HOME";
echo $var
这将打印课程外的“SEO_HOME”。如何让它打印“Home name”(使用变量$var)
编辑:更正定义
编辑:
我的所有问题,我将编辑的站点使用定义来标识所有页面,例如:
define("CONTACT_PAGE","Please contact us");
define("INFO_PAGE","Some information about us");
我需要在这些页面上添加自定义html标题,所有者可以编辑。所以我想我应该创建一个DB表,其中包含(id、page、title),其中page包含CONTACT\u page、INFO\u page等,title就是标题本身
现在,要为网站所有者创建编辑页面,我将使用以下内容:
//This would be an while mysql_fetch_assoc and not a multidimentional array, but for example this will work
$titleArray=array(array("CONTACT_PAGE", "my title for contact page"),array("INFO_PAGE", "my title for info page"));
?>
<tr>
<td>Set title for: <?php echo $titleArray[0][0];?></td>
<td><input type="text" name="name" value="<?php echo $titleArray[0][1];?>" /></td>
</tr>
<tr>
<td>Set title for: <?php echo $titleArray[1][0];?></td>
<td><input type="text" name="name" value="<?php echo $titleArray[1][1];?>" /></td>
</tr>
//这将是一个while-mysql\u-fetch\u-assoc,而不是一个多维数组,但例如,这将起作用
$titleArray=数组(数组(“联系人页面”、“联系人页面的我的标题”)、数组(“信息页面”、“信息页面的我的标题”);
?>
为以下内容设置标题:
代码中的错误是您交换了引号
define(seo_home, "Home name")
^------------- Quotes Missing
$var="seo_home";
^--------------- There should be no quotes
此外,还可以通过对常量使用大写来创建可读性更强的代码,因为除了启用不区分大小写选项外,它们都区分大小写
例如:
define("SEO_HOME", "Home name");
$var = SEO_HOME;
echo $var;
如果你这样做
$var=seo_home;
当您执行echo$var代码>将显示它,但是。。。你可以在家里做回声搜索代码>将显示,您不需要变量。您可以使用:
返回由name指示的常量值
常量()在需要检索常量值时非常有用,
但不知道它的名字。即,它存储在变量中或返回
通过一个函数
此函数也适用于类常量
remove.“$var=“seo_home”应该是$var=seo_home;想象一下$var的值来自DB,所以它是一个字符串:)我在过去的5分钟里尝试了eval,但没有运气。最后你的意思是你想把$var放在seo_home常量中,或者把$var放在$var中?我想用echo打印:“home name”“,定义中的值。我想我得到了你想要的,请看我的答案。这正是我想要的:)非常感谢
mixed constant ( string $name )
<?php
define("SEO_HOME", "Home name");
$var="SEO_HOME";
echo constant($var);