*
* @param mixed $input Data to escape: a single string or an array of strings.
*
- * @return string escaped.
+ * @return string|array escaped.
*/
function escape($input)
{
+ if (null === $input) {
+ return null;
+ }
+
if (is_bool($input)) {
return $input;
}
if (is_array($input)) {
$out = array();
- foreach($input as $key => $value) {
+ foreach ($input as $key => $value) {
$out[$key] = escape($value);
}
return $out;
*/
function generateLocation($referer, $host, $loopTerms = array())
{
- $finalReferer = '?';
+ $finalReferer = './?';
// No referer if it contains any value in $loopCriteria.
- foreach ($loopTerms as $value) {
+ foreach (array_filter($loopTerms) as $value) {
if (strpos($referer, $value) !== false) {
return $finalReferer;
}
* Requires php-intl to display international datetimes,
* otherwise default format '%c' will be returned.
*
- * @param DateTime $date to format.
- * @param bool $time Displays time if true.
- * @param bool $intl Use international format if true.
+ * @param DateTimeInterface $date to format.
+ * @param bool $time Displays time if true.
+ * @param bool $intl Use international format if true.
*
* @return bool|string Formatted date, or false if the input is invalid.
*/
function format_date($date, $time = true, $intl = true)
{
- if (! $date instanceof DateTime) {
+ if (! $date instanceof DateTimeInterface) {
return false;
}
$val = trim($val);
$last = strtolower($val[strlen($val)-1]);
$val = intval(substr($val, 0, -1));
- switch($last) {
- case 'g': $val *= 1024;
- case 'm': $val *= 1024;
- case 'k': $val *= 1024;
+ switch ($last) {
+ case 'g':
+ $val *= 1024;
+ case 'm':
+ $val *= 1024;
+ case 'k':
+ $val *= 1024;
}
return $val;
}
*
* @return string Text translated.
*/
-function t($text, $nText = '', $nb = 1, $domain = 'shaarli') {
+function t($text, $nText = '', $nb = 1, $domain = 'shaarli')
+{
return dn__($domain, $text, $nText, $nb);
}