加拿大华人论坛 美国华人新闻Fix `ereg is deprecated` errors in PHP 5.3
在加拿大
If you upgraded to PHP 5.3, chances are high you’re going to run into a few warnings or deprecated function messages.An example is the ereg family of functions, which are gone for good, as they were slower and felt less familiar than the alternative Perl-compatible preg family.To migrate ereg():ereg('\.([^\.]*$)', $this->file_src_name, $extension);becomespreg_match('/\.([^\.]*$)/', $this->file_src_name, $extension);Notice that I wrapped the pattern (\.([^\.]*$)) around / /, which are RegExp delimiters. If you find yourself escaping / too much (for an URL for example), you might want to use the # delimiter instead.To migrate ereg_replace():$this->file_dst_name_body = ereg_replace('[^A-Za-z0-9_]', '', $this->file_dst_name_body);becomes$this->file_dst_name_body = preg_replace('/[^A-Za-z0-9_]/', '', $this->file_dst_name_body);Again, I just added delimiters to the pattern.If you are using eregi functions (which are the case-insensitive version of ereg), you’ll notice there’re no equivalent pregi functions. This is because this functionality is handled by RegExp modifiers.Basically, to make the pattern match characters in a case-insensitive way, append i after the delimiter:eregi('\.([^\.]*$)', $this->file_src_name, $extension);becomespreg_match('/\.([^\.]*$)/i', $this->file_src_name, $extension);
·生活百科 单相5K限制网格。
·生活百科 太阳报价法