#!/bin/sh
echo "$0: Searching for PHP scripts (except 3rd party) ..."
-PHP=`find -type f -name "*.php" | grep -v "third_party"`
+PHP=$(find -type f -name "*.php" 2>&1 | grep -v "third_party" | grep -v "/vendor/" | grep -v "smarty3/compiled/")
for SCRIPT in ${PHP};
do
- HEADER=`cat ${SCRIPT} | head -n 1 | grep -v "<?"`
+ SHORT_OPEN_TAG=$(cat ${SCRIPT} | head -n 1 | grep -v "<?")
+ CLOSING_TAG=$(cat ${SCRIPT} | tail -n 1 | grep "?>")
- FOOTER=`cat ${SCRIPT} | tail -n 1 | grep -v "?>"`
-
- if [ -n "${HEADER}" ];
+ if [ -n "${SHORT_OPEN_TAG}" ];
then
- echo "$0: Script '${SCRIPT}' has non-typical header."
+ echo "$0: Script '${SCRIPT}' has short opening tag (<?)."
fi
- if [ -n "${FOOTER}" ];
+ if [ -n "${CLOSING_TAG}" ];
then
- echo "$0: Script '${SCRIPT}' has non-typical footer."
+ echo "$0: Script '${SCRIPT}' has discouraged closing tag (?>)."
fi
- LINT=`php -l "${SCRIPT}" 2>&1 | grep -v "No syntax errors detected in"`
+ LINT=$(php -l "${SCRIPT}" 2>&1 | grep -v "Constant FUSE_EDEADLK already defined in Unknown on line 0" | grep -v "No syntax errors detected in")
if [ -n "${LINT}" ]
then