PHP Program to Print Even Length Words in a String
Last Updated :
17 Jan, 2024
This article will show you how to print even-length words in a string using PHP. Printing even-length words from a given string is a common task that can be approached in several ways.
Using explode() and foreach() Functions
The explode()
function can be used to split the string into an array of words, and then a foreach
loop can be employed to filter and print the words with an even length.
PHP
<?php
function EvenLengthWords( $str ) {
$words = explode ( ' ' , $str );
foreach ( $words as $word ) {
if ( strlen ( $word ) % 2 === 0) {
echo $word . " " ;
}
}
}
$str = "Welcome to Geeks for Geeks, A computer science portal" ;
EvenLengthWords( $str );
?>
|
Output
to Geeks, computer portal
Using array_filter() and strlen() Functions
The array_filter()
function can be utilized along with a custom callback function to filter out the words with an even length.
PHP
<?php
function isEvenLength( $word ) {
return strlen ( $word ) % 2 === 0;
}
function EvenLengthWords( $str ) {
$words = explode ( ' ' , $str );
$evenLengthWords = array_filter ( $words , 'isEvenLength' );
echo implode( ' ' , $evenLengthWords );
}
$str = "Welcome to Geeks for Geeks, A computer science portal" ;
EvenLengthWords( $str );
?>
|
Output
to Geeks, computer portal
Using preg_split() and array_filter() Functions
The preg_split() function can be employed to split the string using a regular expression, and then array_filter() can be used to filter out words with even lengths.
PHP
<?php
function EvenLengthWords( $str ) {
$words = preg_split( '/\s+/' , $str );
$evenLengthWords = array_filter ( $words ,
function ( $word ) {
return strlen ( $word ) % 2 === 0;
});
echo implode( ' ' , $evenLengthWords );
}
$str = "Welcome to Geeks for Geeks, A computer science portal" ;
EvenLengthWords( $str );
?>
|
Output
to Geeks, computer portal
Share your thoughts in the comments
Please Login to comment...