On Jan 1, 2008, at 3:48 PM, James Ausmus wrote:
On Jan 1, 2008 2:17 PM, jekillen <[EMAIL PROTECTED]> wrote:Hello again; I have two variables declared in the global scope of a script. $string_a = 'stuff $string_b and more stuff'; $string_b = ''; One is a string with a reference for substitution to the other string which is empty. In the processing body of the script are if/if else blocks. In these blocks I want to use $string_a and set $string_b to a value if( condition) { $string_b = 'by the way;';... etc so $string_a should read: "stuff and by the way; and more stuff" But this substitution will not take place in the context of the else if block. I do not want to write $string_a in at least 5 different if else blocks because it is about 10 lines intended to be an e-mail message body -> !SPAM.Several ways to do this (and avoid globals or a str_replace call): #1: if (condition) { $string_b = 'blah'; } else if (condition2) { $string_b = 'foo'; } else if (condition3) { $string_b = 'bar'; } else { $string_b = 'other'; } $string_a = "stuff $string_b and more stuff"; The reason for this is the variable substition occurs *at the time of assignment* - not later. Another way, if it's not easy to have your string_b setting conditionals all in a row like that (or if this needs to be done elsewhere in code, as well), would be: function assignStrA($subStr) { $retVal = "stuff $subStr and more stuff"; return $retVal; } if (cond1) { $string_a = assignStrA('foo'); } else if (cond2) { $string_a = assignStrA('bar'); } else { $string_a = assignStrA('other'); }
This looks good Thanks for the suggestion; Jeff K
this script is used to process data sent from a link in another e-mail message used to validate and e-mail address. Q: Is there a way to get the substitution to take place here? (by reference, maybe?) Thank you in advance for info Jeff K -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php

