Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Parameters on php files run via cron

Tags:

php

I have a php file that needs to be run on a cronjob and the top of it has the following

#!/usr/bin/php -q

i know the first part tells the server to interpret the file with php cause its not being run through the webserver, but what is the -q for?

Also, are there other parameters? If so, where can i read more about them.

Thanks

like image 723
mrpatg Avatar asked Dec 18 '22 06:12

mrpatg


2 Answers

-q refers to quiet mode where header information isn't displayed. This is now on by default but -q is still supported for backward compatability.

Usage: php [options] [-f] <file> [--] [args...]
       php [options] -r <code> [--] [args...]
       php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
       php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
       php [options] -- [args...]
       php [options] -a

  -a               Run as interactive shell
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -f <file>        Parse and execute <file>.
  -h               This help
  -i               PHP information
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -r <code>        Run PHP <code> without using script tags <?..?>
  -B <begin_code>  Run PHP <begin_code> before processing input lines
  -R <code>        Run PHP <code> for every input line
  -F <file>        Parse and execute <file> for every input line
  -E <end_code>    Run PHP <end_code> after processing all input lines
  -H               Hide any passed arguments from external tools.
  -s               Display colour syntax highlighted source.
  -v               Version number
  -w               Display source with stripped comments and whitespace.
  -z <file>        Load Zend extension <file>.

  args...          Arguments passed to script. Use -- args when first argument
                   starts with - or script is read from stdin

  --ini            Show configuration file names

  --rf <name>      Show information about function <name>.
  --rc <name>      Show information about class <name>.
  --re <name>      Show information about extension <name>.
  --ri <name>      Show configuration for extension <name>.

php -l is the one I use the most. It's nice, when editing, to be able to run a quick syntax check on a file (in vim, :! php -l %)

like image 70
Mark Biek Avatar answered Jan 09 '23 06:01

Mark Biek


The -q is the command line option for quite mode. The PHP Site has explanations of other command line options (Part way down the page), but as -q is now default it isn't mentioned in the list.

From that page:

CLI is started up in quiet mode by default, though the -q and --no-header switches are kept for compatibility so that you can use older CGI scripts.

like image 45
Yacoby Avatar answered Jan 09 '23 06:01

Yacoby