我有一个包含单个数组的包含3个指令; “y / n”开关以及开始和结束日期。包含meetingParams.php
看起来像这样:
<?php
$regArray = array("n","2018-03-03","2018-03-07");
?>
我想使用基于Web的表单不时更新这些数组值。我遇到困难的是找到正确的语法来做到这一点。现在我有以下内容:
$registration = $_POST['registration'];
$startMeeting = $_POST['startMeeting'];
$endMeeting = $_POST['endMeeting'];
$replace = array($registration, $startMeeting, $endMeeting);
$search = file_get_contents('includes/meetingParams.php');
$parsed = preg_replace('^$regArray.*$', $replace, $search);
file_put_contents("includes/meetingParams.php", $parsed);
当我运行此代码时,文件meetingParams.php
被替换为空文件。我错过了什么?
答案 0 :(得分:1)
这应该可以正常工作:
$content = '<?php
$regArray = array("'.$registration.'","'.$startMeeting.'","'.$endMeeting.'");
?>';
file_put_contents("includes/meetingParams.php", $content);
答案 1 :(得分:0)
试试这个。
include_once "includes/meetingParams.php";
$registration = $_POST['registration'];
$startMeeting = $_POST['startMeeting'];
$endMeeting = $_POST['endMeeting'];
$regArray = array($registration, $startMeeting, $endMeeting);
由于您使用的是PHP文件,因此无需使用file_get_contents
。
这意味着您将该文件放在脚本中。然后就不需要使用RegEx替换数组,只需重新分配它的值。