diff --git a/lib/activities/Stream.php b/lib/activities/Stream.php
index 27daf76a9654ab25436118221302e59a99479e99..c63e238f4c9381f7176d67c7392e0c49f174bc07 100644
--- a/lib/activities/Stream.php
+++ b/lib/activities/Stream.php
@@ -59,7 +59,7 @@ class Stream implements \ArrayAccess, \Countable, \IteratorAggregate
             $id = md5($activity->provider . $activity->content .
                     $activity->verb . $activity->object_type . $activity->mkdate);
 
-            if ($new_activities[$id]) {
+            if (isset($new_activities[$id])) {
                 $url = key($activity->object_url);
                 $name = current($activity->object_url);
                 next($activity->object_url);
diff --git a/lib/classes/ForumActivity.php b/lib/classes/ForumActivity.php
index 63dcbf282a669843060b316ee7a779bbe13000c0..bc00cf19313ee20fdd1ea2183a97441388679ad6 100644
--- a/lib/classes/ForumActivity.php
+++ b/lib/classes/ForumActivity.php
@@ -121,7 +121,7 @@ class ForumActivity
             'verb'         => $verb,              // the activity type
             'object_id'    => $post['topic_id'],  // the id of the referenced object
             'object_type'  => 'forum',            // type of activity object
-            'mkdate'       => $post['mkdate'] ?: time()
+            'mkdate'       => $post['mkdate'] ?? time()
         ];
 
         if ($post['anonymous']) {
diff --git a/lib/classes/StudipMail.class.php b/lib/classes/StudipMail.class.php
index 1aaba8edd89f29e3affb97ea92db0d1ce154ce9d..1ee0db77b777ac443b2b3bdf2725787a9f786a5b 100644
--- a/lib/classes/StudipMail.class.php
+++ b/lib/classes/StudipMail.class.php
@@ -36,7 +36,7 @@ class StudipMail
      */
     private $attachments = [];
     /**
-     * @var string
+     * @var array
      */
     private $sender;
     /**
@@ -45,7 +45,7 @@ class StudipMail
      */
     private $recipients = [];
     /**
-     * @var string
+     * @var array
      */
     private $reply_to;
 
@@ -175,7 +175,7 @@ class StudipMail
      */
     public function getReplyToEmail()
     {
-        return $this->reply_to['mail'];
+        return $this->reply_to['mail'] ?? '';
     }
 
     /**
@@ -193,7 +193,7 @@ class StudipMail
      */
     public function getReplyToName()
     {
-        return $this->reply_to['name'];
+        return $this->reply_to['name'] ?? '';
     }
 
     /**
diff --git a/lib/language.inc.php b/lib/language.inc.php
index fbe847175548f7789cf4a33d32c3196834074723..392629048bbf5b89d26c2564a1031a75fe988bb3 100644
--- a/lib/language.inc.php
+++ b/lib/language.inc.php
@@ -50,7 +50,7 @@ use Negotiation\AcceptHeader;
 function get_accepted_languages(Psr\Http\Message\RequestInterface $request = null) {
     $accepted_languages = null;
     if ($request === null) {
-        $accepted_languages = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
+        $accepted_languages = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? null;
     } elseif ($request->hasHeader('Accept-Language')) {
         $accepted_languages = $request->getHeaderLine('Accept-Language');
     }
diff --git a/lib/phplib/Seminar_Session.class.php b/lib/phplib/Seminar_Session.class.php
index 937a865a10a346fb3bec1de12328e417fff49a9b..8fdb61c7abf72a39017f524b7e48cbb511c58591 100644
--- a/lib/phplib/Seminar_Session.class.php
+++ b/lib/phplib/Seminar_Session.class.php
@@ -130,7 +130,7 @@ class Seminar_Session
             return self::$current_session_state;
         }
         $state = false;
-        if (is_object($GLOBALS['user'])) {
+        if (isset($GLOBALS['user']) && is_object($GLOBALS['user'])) {
             $state = in_array($GLOBALS['user']->id, ['nobody', 'form']) ? 'nobody' : 'authenticated';
         } else {
             $sid = $_COOKIE[__CLASS__];
@@ -157,7 +157,7 @@ class Seminar_Session
      */
     public static function get_session_vars($sid)
     {
-        $sess = $GLOBALS['sess'];
+        $sess = $GLOBALS['sess'] ?? null;
         if (!is_object($sess)) {
             $sess = new self();
         }