2013-03-21 51 views
1

是否可以在PHP中使用函数作用域中的常量?PHP中的函数作用域常量

如果不是,那么我们需要一个函数内的常量(而不是方法)的情况下,最佳选择是什么?

编辑

我的具体使用情况:

我有一个DB工作的功能。我想在常量中存储表名(可能还有其他不会改变的信息,比如字段名)(而不是连接字符串中的“硬编码”)。其他函数不需要知道我的表名。

+0

更多的信息请 – ITroubs 2013-03-21 16:07:40

+3

大部分功能应该是相对短的地方设置固定的功能范围内是不必要的。你能解释一下你想做什么吗? – datasage 2013-03-21 16:08:11

+0

*你如何定义函数与方法? – ficuscr 2013-03-21 16:09:32

回答

0

也许你可以得到你想要的名称空间,如果在PHP的某个最新版本。

看看这个页面:http://php.net/manual/en/language.namespaces.nsconstants.php

<?php 
namespace my\name; // see "Defining Namespaces" section 

class MyClass {} 
function myfunction() {} 
const MYCONST = 1; 

$a = new MyClass; 
$c = new \my\name\MyClass; // see "Global Space" section 

$a = strlen('hi'); // see "Using namespaces: fallback to global 
       // function/constant" section 

$d = namespace\MYCONST; // see "namespace operator and __NAMESPACE__ 
        // constant" section 
$d = __NAMESPACE__ . '\MYCONST'; 
echo constant($d); // see "Namespaces and dynamic language features" section