diff --git a/core/API/DocumentationGenerator.php b/core/API/DocumentationGenerator.php
index b44b56d4da73a66074e532e5aeb9400f557af23d..5e8b0d1e41281ab4a0438d6d3a3da3aa35a6f903 100644
--- a/core/API/DocumentationGenerator.php
+++ b/core/API/DocumentationGenerator.php
@@ -79,9 +79,8 @@ class DocumentationGenerator
                     if ($exampleUrl !== false) {
                         $lastNUrls = '';
                         if (preg_match('/(&period)|(&date)/', $exampleUrl)) {
-                            $exampleUrlRss1 = $prefixUrls . $this->getExampleUrl($class, $methodName, array('date' => 'last10', 'period' => 'day') + $parametersToSet);
-                            $exampleUrlRss2 = $prefixUrls . $this->getExampleUrl($class, $methodName, array('date' => 'last5', 'period' => 'week',) + $parametersToSet);
-                            $lastNUrls = ",	RSS of the last <a target=_blank href='$exampleUrlRss1&format=rss$token_auth&translateColumnNames=1'>10 days</a>";
+                            $exampleUrlRss = $prefixUrls . $this->getExampleUrl($class, $methodName, array('date' => 'last10', 'period' => 'day') + $parametersToSet);
+                            $lastNUrls = ",	RSS of the last <a target=_blank href='$exampleUrlRss&format=rss$token_auth&translateColumnNames=1'>10 days</a>";
                         }
                         $exampleUrl = $prefixUrls . $exampleUrl;
                         $str .= " [ Example in
diff --git a/core/API/ResponseBuilder.php b/core/API/ResponseBuilder.php
index bb387765ad2055d0404237872aba62ed7c368b2d..526ac3b6e056aba66a2d274498e3b02df0e03c62 100644
--- a/core/API/ResponseBuilder.php
+++ b/core/API/ResponseBuilder.php
@@ -400,7 +400,7 @@ class ResponseBuilder
         $first = reset($array);
         foreach ($array as $first) {
             if (is_array($first)) {
-                foreach ($first as $key => $value) {
+                foreach ($first as $value) {
                     // Yes, this is a multi dim array
                     if (is_array($value)) {
                         switch ($this->outputFormat) {
diff --git a/core/CronArchive.php b/core/CronArchive.php
index 86d5bd4cffa80c0063c11de941b58f07e497e2f5..0fcc5bdcaea89427b140b8b3b5f33c0fd9bc12cd 100644
--- a/core/CronArchive.php
+++ b/core/CronArchive.php
@@ -1169,7 +1169,7 @@ class CronArchive
     private function logFatalErrorUrlExpected()
     {
         $this->logFatalError("./console core:archive expects the argument 'url' to be set to your Piwik URL, for example: --url=http://example.org/piwik/ "
-            . "\n--help for more information", $backtrace = false);
+            . "\n--help for more information");
     }
 
     private function getVisitsLastPeriodFromApiResponse($stats)
diff --git a/core/DataAccess/LogAggregator.php b/core/DataAccess/LogAggregator.php
index 6c9efc8d642421cc7df778bc7760703da17b88d3..851fa4f6e29947c0851d28416b64ed890b5f9b31 100644
--- a/core/DataAccess/LogAggregator.php
+++ b/core/DataAccess/LogAggregator.php
@@ -662,7 +662,7 @@ class LogAggregator
 
     protected function getActionsMetricFields()
     {
-        return $availableMetrics = array(
+        return array(
             Metrics::INDEX_NB_VISITS        => "count(distinct " . self::LOG_ACTIONS_TABLE . ".idvisit)",
             Metrics::INDEX_NB_UNIQ_VISITORS => "count(distinct " . self::LOG_ACTIONS_TABLE . ".idvisitor)",
             Metrics::INDEX_NB_ACTIONS       => "count(*)",
diff --git a/core/DataArray.php b/core/DataArray.php
index f0b4b4d0f542a40a442e88938cfc768ae053f26f..350cdf614d73afe3b3ca19304c1ede2f97350a42 100644
--- a/core/DataArray.php
+++ b/core/DataArray.php
@@ -332,7 +332,7 @@ class DataArray
      */
     protected function enrichWithConversions(&$data)
     {
-        foreach ($data as $label => &$values) {
+        foreach ($data as &$values) {
             if (!isset($values[Metrics::INDEX_GOALS])) {
                 continue;
             }
diff --git a/core/DataTable.php b/core/DataTable.php
index 627fa98ff638ca4c61826a1f2e3b9cf4cbaee2f2..796bcd8ce4f9e2abf85e7bab6a0dde515cf048b3 100644
--- a/core/DataTable.php
+++ b/core/DataTable.php
@@ -1026,7 +1026,6 @@ class DataTable implements DataTableInterface
     public static function isEqual(DataTable $table1, DataTable $table2)
     {
         $rows1 = $table1->getRows();
-        $rows2 = $table2->getRows();
 
         $table1->rebuildIndex();
         $table2->rebuildIndex();
diff --git a/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php b/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
index 68ce02f6133c72e2654af0610128c94b167b73bf..d82599be5ccb484ee1ffd87f753da05f3b6b6ef3 100644
--- a/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
+++ b/core/DataTable/Filter/ColumnCallbackAddColumnQuotient.php
@@ -75,7 +75,7 @@ class ColumnCallbackAddColumnQuotient extends BaseFilter
      */
     public function filter($table)
     {
-        foreach ($table->getRows() as $key => $row) {
+        foreach ($table->getRows() as $row) {
             $value = $this->getDividend($row);
             if ($value === false && $this->shouldSkipRows) {
                 continue;
diff --git a/core/DataTable/Filter/ColumnCallbackReplace.php b/core/DataTable/Filter/ColumnCallbackReplace.php
index 2d48954ae1925dead6bf23a7a144e49395a64e40..bec7d683f527c10229f4022d24b5cd0da709d284 100644
--- a/core/DataTable/Filter/ColumnCallbackReplace.php
+++ b/core/DataTable/Filter/ColumnCallbackReplace.php
@@ -72,7 +72,7 @@ class ColumnCallbackReplace extends BaseFilter
      */
     public function filter($table)
     {
-        foreach ($table->getRows() as $key => $row) {
+        foreach ($table->getRows() as $row) {
             $extraColumnParameters = array();
             foreach ($this->extraColumnParameters as $columnName) {
                 $extraColumnParameters[] = $row->getColumn($columnName);
diff --git a/core/DataTable/Filter/ReplaceColumnNames.php b/core/DataTable/Filter/ReplaceColumnNames.php
index 1b5d5cb79c274b7fc8f5e0afee448649fc5beec0..4dd3218902b42dc0a579bc645337444c1ee7a0c1 100644
--- a/core/DataTable/Filter/ReplaceColumnNames.php
+++ b/core/DataTable/Filter/ReplaceColumnNames.php
@@ -81,7 +81,7 @@ class ReplaceColumnNames extends BaseFilter
      */
     protected function filterTable($table)
     {
-        foreach ($table->getRows() as $key => $row) {
+        foreach ($table->getRows() as $row) {
             $oldColumns = $row->getColumns();
             $newColumns = $this->getRenamedColumns($oldColumns);
             $row->setColumns($newColumns);
diff --git a/core/DataTable/Map.php b/core/DataTable/Map.php
index 7c97ed32b2a2ad9f3624e1d0efcc2d6e0aea577e..028c40b480757ea386a2e86cd6ee5adcf8e832f0 100644
--- a/core/DataTable/Map.php
+++ b/core/DataTable/Map.php
@@ -104,7 +104,7 @@ class Map implements DataTableInterface
      */
     public function filter($className, $parameters = array())
     {
-        foreach ($this->getDataTables() as $id => $table) {
+        foreach ($this->getDataTables() as $table) {
             $table->filter($className, $parameters);
         }
     }
diff --git a/core/DataTable/Renderer/Rss.php b/core/DataTable/Renderer/Rss.php
index 86af06d53bb7abbccffb92813c502a63f1cd66a6..691f1f25b9619aa9b868899283668fe4d01aadc6 100644
--- a/core/DataTable/Renderer/Rss.php
+++ b/core/DataTable/Renderer/Rss.php
@@ -184,7 +184,6 @@ class Rss extends Renderer
             }
         }
         $html .= "\n</tr>";
-        $colspan = count($allColumns);
 
         foreach ($tableStructure as $row) {
             $html .= "\n\n<tr>";
diff --git a/core/DataTable/Renderer/Xml.php b/core/DataTable/Renderer/Xml.php
index d50de41f8884546495aae6cdef7d2a219185b933..055aa673da261964a877f89732cf188a383bbeb2 100644
--- a/core/DataTable/Renderer/Xml.php
+++ b/core/DataTable/Renderer/Xml.php
@@ -373,7 +373,7 @@ class Xml extends Renderer
 
             // Handing case idgoal=7, creating a new array for that one
             $rowAttribute = '';
-            if (($equalFound = strstr($rowId, '=')) !== false) {
+            if (strstr($rowId, '=') !== false) {
                 $rowAttribute = explode('=', $rowId);
                 $rowAttribute = " " . $rowAttribute[0] . "='" . $rowAttribute[1] . "'";
             }
diff --git a/core/FrontController.php b/core/FrontController.php
index a06a08db9f062eba389e1c03c38eef0cf22e94a0..88485e810326fb23030b2cc9dd9f19956e7133ee 100644
--- a/core/FrontController.php
+++ b/core/FrontController.php
@@ -390,7 +390,7 @@ class FrontController extends Singleton
 
             // ensure the current Piwik URL is known for later use
             if (method_exists('Piwik\SettingsPiwik', 'getPiwikUrl')) {
-                $host = SettingsPiwik::getPiwikUrl();
+                SettingsPiwik::getPiwikUrl();
             }
 
             /**
@@ -419,7 +419,7 @@ class FrontController extends Singleton
 
             // Force the auth to use the token_auth if specified, so that embed dashboard
             // and all other non widgetized controller methods works fine
-            if (($token_auth = Common::getRequestVar('token_auth', false, 'string')) !== false) {
+            if (Common::getRequestVar('token_auth', false, 'string') !== false) {
                 Request::reloadAuthUsingTokenAuth();
             }
             SettingsServer::raiseMemoryLimitIfNecessary();
diff --git a/core/IP.php b/core/IP.php
index 66f3b30209ab2233e1156d877c20b0c67eb72e4a..ca9d2702afbf2325d1de3dcf88ac0c863aea9f94 100644
--- a/core/IP.php
+++ b/core/IP.php
@@ -170,9 +170,8 @@ class IP
      */
     public static function isIPv4($ip)
     {
-        // in case mbstring overloads strlen and substr functions
+        // in case mbstring overloads strlen function
         $strlen = function_exists('mb_orig_strlen') ? 'mb_orig_strlen' : 'strlen';
-        $substr = function_exists('mb_orig_substr') ? 'mb_orig_substr' : 'substr';
 
         // IPv4
         if ($strlen($ip) == 4) {
diff --git a/core/SegmentExpression.php b/core/SegmentExpression.php
index d41e353d6654483e30d4d528c4b1065b8ed04397..682aa201d0189d7dcb47938de796c4a9d8fac38f 100644
--- a/core/SegmentExpression.php
+++ b/core/SegmentExpression.php
@@ -63,7 +63,7 @@ class SegmentExpression
     public function parseSubExpressions()
     {
         $parsedSubExpressions = array();
-        foreach ($this->tree as $id => $leaf) {
+        foreach ($this->tree as $leaf) {
             $operand = $leaf[self::INDEX_OPERAND];
 
             $operand = urldecode($operand);
@@ -339,7 +339,6 @@ class SegmentExpression
         if (count($this->tree) == 0) {
             throw new Exception("Invalid segment, please specify a valid segment.");
         }
-        $bind = array();
         $sql = '';
         $subExpression = false;
         foreach ($this->tree as $expression) {
diff --git a/core/Tracker.php b/core/Tracker.php
index 90ca70ff5396a722e0f86a58bcda8446600040fe..a49aa668601dd54bcfd46f7e51cd866ecfa7efaf 100644
--- a/core/Tracker.php
+++ b/core/Tracker.php
@@ -411,8 +411,8 @@ class Tracker
             require_once PIWIK_INCLUDE_PATH . '/core/Loader.php';
             require_once PIWIK_INCLUDE_PATH . '/core/Option.php';
 
-            $access = Access::getInstance();
-            $config = Config::getInstance();
+            Access::getInstance();
+            Config::getInstance();
 
             try {
                 Db::get();
diff --git a/core/View/UIControl.php b/core/View/UIControl.php
index 98310413f9020040cd7d856614b491c3c01b0049..6bbb1e0b1d61969ea18d53aa20b5b8bcf074cebf 100644
--- a/core/View/UIControl.php
+++ b/core/View/UIControl.php
@@ -136,7 +136,6 @@ class UIControl extends \Piwik\View
         }
 
         $this->templateVars['clientSideParameters'] = array();
-        $clientSideParameters = $this->getClientSideParameters();
         foreach ($this->getClientSideParameters() as $name) {
             $this->templateVars['clientSideParameters'][$name] = $innerTemplateVars[$name];
         }