Re: [PHP] Stripping control M character (^M)
Philip Hallstrom wrote: Hello All, I'm having some issues with carriage returns. Specifically the control M character (^M). I have attempted to clean and validate the file I'm creating. Here's the code. while ($row = mysql_fetch_array($result)){ // assign and clean vars $artist = trim($row[artist]); $tdDate = trim($row[start_date]); $venue = trim($row[venue]); $city = trim($row[CITY]); $state = trim($row[STATE]); $country = trim($row[COUNTRY]); $tdId = trim($row[td_id]); // create string $line = $artist|||$tdDate||$venue|$city|$state|$country|$tdId\n; // validate the string if(preg_match(/.*.|||.*.||.*.|.*.|.*.|.*.|.*.n\//, $line)){ // record is correct so write line to file fwrite($handle,$line); } } So ^M slips right by trim and my preg_match line. Where is the carriage return appearing in your line of output? Trim will remove these, but only at the beginning/end of a string so if $artist = Paul\rNowosielski that won't get cleaned up... Maybe run them through ereg_replace() using [\n\r] as a pattern? Or maybe use the m modifier? -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Stripping control M character (^M)
Hello All, I'm having some issues with carriage returns. Specifically the control M character (^M). I have attempted to clean and validate the file I'm creating. Here's the code. while ($row = mysql_fetch_array($result)){ // assign and clean vars $artist = trim($row[artist]); $tdDate = trim($row[start_date]); $venue = trim($row[venue]); $city = trim($row[CITY]); $state = trim($row[STATE]); $country = trim($row[COUNTRY]); $tdId = trim($row[td_id]); // create string $line = $artist|||$tdDate||$venue|$city|$state|$country|$tdId\n; // validate the string if(preg_match(/.*.|||.*.||.*.|.*.|.*.|.*.|.*.n\//, $line)){ // record is correct so write line to file fwrite($handle,$line); } } So ^M slips right by trim and my preg_match line. Any ideas?? TIA -- Paul Nowosielski Webmaster CelebrityAccess.com Tel: 303.440.0666 ext:219 Cell: 303.827.4257 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Stripping control M character (^M)
Hello All, I'm having some issues with carriage returns. Specifically the control M character (^M). I have attempted to clean and validate the file I'm creating. Here's the code. while ($row = mysql_fetch_array($result)){ // assign and clean vars $artist = trim($row[artist]); $tdDate = trim($row[start_date]); $venue = trim($row[venue]); $city = trim($row[CITY]); $state = trim($row[STATE]); $country = trim($row[COUNTRY]); $tdId = trim($row[td_id]); // create string $line = $artist|||$tdDate||$venue|$city|$state|$country|$tdId\n; // validate the string if(preg_match(/.*.|||.*.||.*.|.*.|.*.|.*.|.*.n\//, $line)){ // record is correct so write line to file fwrite($handle,$line); } } So ^M slips right by trim and my preg_match line. Where is the carriage return appearing in your line of output? Trim will remove these, but only at the beginning/end of a string so if $artist = Paul\rNowosielski that won't get cleaned up... Maybe run them through ereg_replace() using [\n\r] as a pattern? -philip -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php