Generator Functions In PHP In Hindi | PHP Generator Functions

Other Blogs

Blogs ❯❯ PHP

Image could not load

PHP generator function

What are generator functions in PHP ?

PHP में generator functions एक special type के functions हैं जो sequential data को lazily produce करते हैं, मतलब वो एक time पर एक value return करते हैं और फिर अपनी state को save करके next value के लिए wait करते हैं।

Generators को yield keyword के through implement किया जाता है।

Need of generator functions

Traditional methods में, अगर आपको large dataset को process करना है, तो आपको पूरा dataset memory में load करना पड़ता है। ये memory intensive हो सकता है और performance issues create कर सकता है।

Generators इस problem को solve करते हैं by generating values on थे fly, एक time पर एक value को process करके।

PHP generator function example

चलिए एक छोटा सा example लेते हैं -

<?php function simpleGenerator() { yield 'Hello'; yield 'World'; } $generator = simpleGenerator(); foreach ($generator as $value) { echo $value . "\n"; // Outputs "Hello" and then "World". } ?>

example में आप देख सकते हैं कि simpleGenerator() function में yield keyword का use करके values को generate किया गया है।

Reading a large file using generator functions

पहला example तो simple example था , अब मान लीजिये आपको एक large file से content को line by line read करना हो।

पहला तरीका है कि आप एक साथ file content को get करके process करें जो कि memory intensive हो सकता है और performance degrade करेगा , ऐसी जगह पर हम generator functions use में ले सकते हैं।

<?php function readFileLineByLine($filePath) { $file = fopen($filePath, 'r'); if (!$file) { throw new Exception("Could not open the file!"); } while (($line = fgets($file)) !== false) { yield $line; } fclose($file); } $filePath = 'largefile.txt'; $generator = readFileLineByLine($filePath); foreach ($generator as $line) { echo $line; } ?>

Advantages of generator functions in PHP

  1. Processing Large Data Sets : Large data sets को process करते वक्त, जैसे की file reading, database query results, etc.

  2. Streaming Data : Real-time data processing जहाँ data को stream किया जाता है और process किया जाता है without loading it all into memory.

  3. Iterative Algorithms : Algorithms जो step-by-step computations perform करते हैं, जैसे की generating sequences, etc.

  4. Improving Performance : Generators को use करके memory usage और performance को optimize करना by avoiding थे need तो load all data into memory at once.

Conclusion

Generators PHP में एक powerful feature है जो lazily values को generate करते हैं, memory efficiency को improve करते हैं, और large datasets को process करने के लिए ideal हैं।

ये feature real-time data streaming, large file reading, और iterative algorithms में use किया जा सकता है।

Recent Blogs

Loading ...

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook

Your Thought ?

Please wait . . .

    0 Comment(s) found !