Symfony\Component\Finder\Finder::contains PHP Method

contains() public method

Strings or PCRE patterns can be used: $finder->contains('Lorem ipsum') $finder->contains('/Lorem ipsum/i')
See also: FilecontentFilterIterator
public contains ( string $pattern ) : Finder | Symfony\Component\Finder\SplFileInfo[]
$pattern string A pattern (string or regexp)
return Finder | Symfony\Component\Finder\SplFileInfo[] The current Finder instance
    public function contains($pattern)
    {
        $this->contains[] = $pattern;

        return $this;
    }

Usage Example

 /**
  * @Route("/search")
  */
 public function searchAction(Request $request)
 {
     $search = new FileSearch();
     $dirList = $this->generateDirList();
     $form = $this->createForm(SearchType::class, $search, array('dir_list' => $dirList));
     $form->handleRequest($request);
     if ($form->isSubmitted() && $form->isValid()) {
         $searchFor = $form->get('searchFor')->getData();
         $fileType = $form->get('fileType')->getData();
         $searchDir = $form->get('searchDir')->getData();
         $finder = new Finder();
         if (isset($fileType)) {
             $finder->files()->name("*.{$fileType}");
         }
         if (isset($searchDir)) {
             $finder->files()->in($searchDir);
         } else {
             $finder->files()->in(__DIR__);
         }
         if (isset($searchFor)) {
             $finder->contains($searchFor);
         }
         if (isset($finder) && count($finder) > 0) {
             echo "<h3>Found results in {$searchDir}: </h3><br/>";
             foreach ($finder as $key => $value) {
                 echo "<h4> {$value} contains '{$searchFor}' </h4>";
             }
         } else {
             echo "No content '{$searchFor}' in '{$searchDir}'";
         }
     }
     return $this->render('MihailSearchBundle:randomsearch:search_form.html.twig', array('form' => $form->createView()));
 }
All Usage Examples Of Symfony\Component\Finder\Finder::contains