Make WordPress Core

Opened 17 years ago

Closed 16 years ago

Last modified 15 years ago

#10460 closed defect (bug) (duplicate)

PemFTP and phpmailer use ereg which is deprecated in PHP 5.3

Reported by: lloydbudd Owned by:
Priority: high Milestone:
Component: Warnings/Notices Version: 2.9
Severity: major Keywords:
Cc: Focuses:

Description

ereg is deprecated in PHP 5.3 . Need to be replaced with preg family of functions.

$ ack ereg -l
wp-admin/includes/class-ftp-pure.php
wp-admin/includes/class-ftp-sockets.php
wp-admin/includes/class-ftp.php
wp-admin/includes/class-pclzip.php
wp-includes/class-phpmailer.php
wp-includes/class-pop3.php
wp-includes/functions.wp-scripts.php
wp-includes/functions.wp-styles.php
wp-includes/gettext.php
wp-includes/rewrite.php

Change History (12)

#1 @lloydbudd
17 years ago

  • Severity normal → minor

#2 @dd32
17 years ago

Its a shame 60% of those are external libraries.. looks like some upstream patching is needed.

#3 @Speedboxer
17 years ago

As well, split will need to be replaced with preg_split.

#4 @Denis-de-Bernardy
17 years ago

  • Keywords needs-patch added
  • Milestone Future Release → 2.9
  • Priority low → high
  • Severity minor → major

#5 @eddieringle
17 years ago

  • Cc eddie@… added
  • Keywords needs-patch php 5.3, deprecated → needs-patch php 5.3 deprecated

I ran ack-grep myself and found that the WordPress files in the list above do not contain any ereg functions, but phrases that contain the pattern 'ereg' (e.g. $pageregex, wp_deregister_style( $handle )).
The external libraries (class-*.php) do however contain ereg functions.
Has this been fixed, and that is why I am not seeing any ereg functions?

#6 @eddieringle
17 years ago

  • Keywords needs-patch php 5.3 deprecated → needs-patch php 5.3, deprecated

#7 @eddieringle
17 years ago

  • Keywords needs-patch php 5.3, deprecated → needs-patch, php 5.3, deprecated

#8 @ryan
17 years ago

  • Milestone 2.9 → Future Release

class-pclzip.php uses ereg only if requested and mentions in a comment that it is deprecated.

That leaves the PemFTP files and phpmailer. PemFTP is used by class-wp-filesystem-ftpsockets.php. ftpsockets is used only other fs backends are unavailable. Fixing or replacing PemFTP is not priority.

New versions of phpmailer eliminate the eregi, but those versions require PHP5+. We can look into backporting ereg removal for a future WP release.

#9 @westi
17 years ago

  • Summary ereg is deprecated in PHP 5.3 → PemFTP and phpmailer use ereg which is deprecated in PHP 5.3

Updating summary to make it easier to quickly identify what the issue is.

#10 @hakre
17 years ago

I can take care of phpmailer. I know the class since years and since the main project doesn't upgrade it any longer, we can freely apply changes w/o upstreaming.

#11 @solarissmoke
16 years ago

  • Keywords needs-patch php 5.3 deprecated removed
  • Resolution → duplicate
  • Status new → closed

#16026 is tagged for 3.2

#12 @nacin
15 years ago

  • Milestone Future Release
Note: See TracTickets for help on using tickets.