|  | Posted by Smiley on 09/26/07 08:11 
I'm fooling around with using Eval and trying to manipulate a few things.  I ran into a couple of weird results.  First of all, in one place I used the
 following code:
 
 $filestring = str_replace("<?", "\n<?\n", $filestring);
 $filestring = str_replace("?>", "\n?>\n", $filestring);
 
 Not a huge thing, just making things easier to read for me.  But doing this
 gives me an error, even when I comment those lines out.  I have to remove
 them completely, it seems to be interpreting the ?> and <? strangely even
 when they're in quotes or commented out.  Why is that?
 
 Second thing, I'm having trouble getting eval to work with some of the code,
 and I have no idea why.  It grabs the code to eval from other files, and I
 can't see any reason why it shouldn't work.  This is the error message I'm
 getting:
 
 Parse error: parse error, unexpected $ in
 /homepages/htdocs/parrot0123/tester.php(498) : eval()'d code on line 44
 
 I exploded the eval code and print_r'd the results, and this is what I got:
 
 Array
 (
 [0] => global $monthname;
 [1] => global $config;
 [2] => $now = time();
 [3] => $today = getdate($now);
 [4] => $curmonth = $today['mon'];
 [5] => $curyear = $today['year'];
 [6] => // Determine whether it's a leap year
 [7] => $leapyear = 0;
 [8] => $remainder = $curyear % 400;
 [9] => if(!$remainder)
 [10] => {
 [11] => 	$leapyear = 1;
 [12] => }
 [13] => else
 [14] => {
 [15] => 	$remainder = $curyear % 100;
 [16] => 	if ($remainder)
 [17] => 	{
 [18] => 		$remainder = $curyear % 4;
 [19] => 		if (!$remainder)
 [20] => 		{
 [21] => 			$leapyear = 1;
 [22] => 		}
 [23] => 	}
 [24] => }
 [25] => // Set the number of days per month
 [26] => $mdays[1] = 31;
 [27] => $mdays[2] = 28 + $leapyear;
 [28] => $mdays[3] = 31;
 [29] => $mdays[4] = 30;
 [30] => $mdays[5] = 31;
 [31] => $mdays[6] = 30;
 [32] => $mdays[7] = 31;
 [33] => $mdays[8] = 31;
 [34] => $mdays[9] = 30;
 [35] => $mdays[10] = 31;
 [36] => $mdays[11] = 30;
 [37] => $mdays[12] = 31;
 [38] => // Calculate the day of the week that the first day of this
 months falls on
 [39] => $_POST['nowmonth'] = mktime(0, 0, 0, $curmonth, 1, $curyear);
 [40] => $cmstamp = $_POST['nowmonth'];
 [41] => $datevals = getdate($ts);
 )There's no line 44, what could the problem possibly be?
  Navigation: [Reply to this message] |