Re: preg_replace problem

From: Date: Thu, 02 Mar 2006 00:22:16 +0000
Subject: Re: preg_replace problem
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-231292@lists.php.net to get a copy of this message
Benjamin Adams wrote:
$file = dog.txt; $today = date("Ymd"); function incDate($new, $date){
        //$date = settype('int');
        return $new.($date++);
} $getOldValue = parse_ini_file($file, 1); $newValue = $getOldValue[$today] + 1; $oldDate = $today . " = ". $newValue; $newDate = preg_replace('/(\d+\s\=\s)(\d+)/ie', 'incDate("$1","$2")', $oldDate); file_put_contents($file, $newDate . "\n"); This works with one file but with multi lines I'm having trouble: if the file has: 20060301 = 34 20060302 = 3 the file after script will be: 20060302 = 4 I want it to preserve the previous lines so output should be: 20060301 = 34 20060302 = 4 Help would be great, thanks Ben
The easiest way would be to get incDate to add the newline back on the end. You could also try: preg_replace('/(\d+\s\=\s)(\d+)/ie', 'incDate("$1","$2")' . "\n", $oldDate); -- Postgresql & php tutorials http://www.designmagick.com/

« previous php.general (#231292) next »