PO::unpoify() WordPress Method
The PO::unpoify() method is used to remove all PO files from a WordPress installation. This is useful when you want to clean up your installation, or when you need to troubleshoot PO file related issues.
PO::unpoify( string $string ) #
Gives back the original string from a PO-formatted string
Parameters
- $string
 (string)(Required)PO-formatted string
Return
(string) enascaped string
Source
File: wp-includes/pomo/po.php
		public static function unpoify( $string ) {
			$escapes               = array(
				't'  => "\t",
				'n'  => "\n",
				'r'  => "\r",
				'\\' => '\\',
			);
			$lines                 = array_map( 'trim', explode( "\n", $string ) );
			$lines                 = array_map( array( 'PO', 'trim_quotes' ), $lines );
			$unpoified             = '';
			$previous_is_backslash = false;
			foreach ( $lines as $line ) {
				preg_match_all( '/./u', $line, $chars );
				$chars = $chars[0];
				foreach ( $chars as $char ) {
					if ( ! $previous_is_backslash ) {
						if ( '\\' === $char ) {
							$previous_is_backslash = true;
						} else {
							$unpoified .= $char;
						}
					} else {
						$previous_is_backslash = false;
						$unpoified            .= isset( $escapes[ $char ] ) ? $escapes[ $char ] : $char;
					}
				}
			}
			// Standardize the line endings on imported content, technically PO files shouldn't contain \r.
			$unpoified = str_replace( array( "\r\n", "\r" ), "\n", $unpoified );
			return $unpoified;
		}
Expand full source codeCollapse full source codeView on TracView on GitHub