2011-05-25 53 views
1

我需要更新PHP文件中定义的常量。该constants.php文件很简单:从C#更新PHP文件常量#

<?php 
$firstConstant = "abcd"; 
$third = "abcd"; 

$updatedOn = "23 April 2001"; 
?> 

现在我需要的是我的C#应用​​程序来更新此文件中的当前日期的$updatedOn不变。

我该如何做到这一点?提前致谢!

+0

正则表达式替换+?你为什么不使用配置文件? – erenon 2011-05-25 12:10:27

+0

这就是我需要帮助......我之前没有使用过正则表达式......我如何使用配置文件?该文件被其他PHP页面用于提取值。 OMG! – Jim 2011-05-25 12:15:24

回答

2

您可以编写一个与$updatedOn = "23 April 2001";相匹配的正则表达式,在文件中生成替换行,然后使用String.Replace方法将您的整行替换为您创建的新行。这里有一个正则表达式让你开始:

\$updatedOn = \"([A-Za-z\W0-9]+)\"

对于一些更灵活一点,你可以写一个simple parser其理解PHP的一个子集 - 即代码标记和分配/字符串常量 - 解析文件,把将键/值对组合到字典中,更新相关值并将其重新写回。

一些正则表达式资源:

+2

OMG!写一个解析器!如果这不会让我加薪,那么别的什么都不会! “嗯,你看,我写了一个自定义的动态解析器​​,它理解PHP的_whole_子集,包括代码标签和赋值/字符串常量,以使其工作”;)谢谢! – Jim 2011-05-25 12:27:09

+0

这是浪费几个周末的好方法:) – mdm 2011-05-25 12:32:52