我正在制作一个小型应用程序,如果配置文件可以用于bash和php,那就太好了。到目前为止,我在:
<<COMMENT
<?php
$dbuser = "Hello world!";
$dbpass = "testpass";
echo "$dbuser";
/*
COMMENT
dbuser="Hello world";
dbpass="testpass";
echo $dbuser;
<<COMMENT
*/
?>
COMMENT
并且几乎按预期工作:
jupiter@jupi:~/$ ./conf.sh.php
Hello world
jupiter@jupi:~/$ php conf.sh.php
<<COMMENT
Hello world!COMMENT
- 我需要删除php中出现的注释
- 如果有人知道一种方法,只为两种语言声明一次vars,那就太棒了
有什么想法吗?
终于找到了几种解决方法;这是解决方案代码:
- 第一个解决方案是多语言脚本polyconf.sh.php
<<a <?php $sqldb = "dbname"; $sqluser = "username"; $sqlpass = "pass"; /* a sqldb="dbname" sqluser="username" sqlpass="pass" return 0 */ ?>
- 让它工作的诀窍是如何调用脚本:bash中的
- :从另一个文件源polyconf.sh.php(返回时为./polyconf.shphp错误(
- 在php中:将它从另一个页面包含在html注释之间,如
<?php echo "<!--n"; include 'tardisconf.sh.php'; echo "-->n"; echo $sqlpass; ?>
正如@Adyson所指出的;随你便,但这是一个可怕的噩梦的代码库"-的确如此,但它确实有效,我很高兴有一位能说多种语言的工作人员。
第二个解决方案不是多语言的,而是一个更可维护的bash-conf,它自己生成一个php配置:
sqldb="dbname";
sqluser="username";
sqlpass="pass";
cat "$0"|grep -v grep|sed -e 's/^/$/g' -e 's/=/ = /g' > settings.php