3

I need a shell script which has a loop. In each loop iteration it needs to call a PHP file with some parameters. Is there any way to do it?

Martin Jacob
  • 356
  • 1
  • 7
  • 16

3 Answers3

9

In your php file named test.php, for example

<?php
//like programs in c language, use $argc, $argv access command line argument number and arguments, uncomment below two line to dump $argc and $argv
//var_dump($argc); //an integer
//var_dump($argv); //an array with arguments
//use args and do anything you want
echo "do my job\n";
exit(0);

then create a shell script named test.sh

#! `which bash`
php=`which php`
i=10
while [[ $i -ge 0 ]];
do  
$php test.php 1 2
((i--))
done

put the two files into the same directory. Then run command in the terminal

bash test.sh
ericfang
  • 232
  • 2
  • 7
1

If this means a Linux/Unix shell

for i in `seq 4`; do
    php myscript.php param1 param2
done

But since PHP has loops too, you can do this in PHP as well.

for ($i = 0; $i < 4; $i++)
    system("php myscript.php param1 param2");
Olaf Dietsche
  • 69,448
  • 7
  • 95
  • 188
0
#!/bin/sh
#
#Script to test for loop
#
#

    while [condition] 
    do
    php test.file
    done
Rohit Choudhary
  • 2,205
  • 1
  • 24
  • 34