diff --git src/bp-core/deprecated/1.6.php src/bp-core/deprecated/1.6.php
index c5550b6dd..9101f52a9 100644
--- src/bp-core/deprecated/1.6.php
+++ src/bp-core/deprecated/1.6.php
@@ -265,8 +265,13 @@ if ( !function_exists( 'bp_dtheme_register_actions' ) ) :
 
 		// For each of the problematic hooks, exit at the very end of execution
 		foreach( $actions as $action ) {
-			add_action( 'wp_ajax_'        . $action, create_function( '', 'exit;' ), 9999 );
-			add_action( 'wp_ajax_nopriv_' . $action, create_function( '', 'exit;' ), 9999 );
+			add_action( 'wp_ajax_' . $action, function() {
+				exit;
+			}, 9999 );
+
+			add_action( 'wp_ajax_nopriv_' . $action, function() {
+				exit;
+			}, 9999 );
 		}
 	}
 	add_action( 'after_setup_theme', 'bp_die_legacy_ajax_callbacks', 20 );
diff --git src/bp-groups/classes/class-bp-group-extension.php src/bp-groups/classes/class-bp-group-extension.php
index 3e9a2bb5f..598bd02a9 100644
--- src/bp-groups/classes/class-bp-group-extension.php
+++ src/bp-groups/classes/class-bp-group-extension.php
@@ -753,8 +753,14 @@ class BP_Group_Extension {
 			// When we are viewing the extension display page, set the title and options title.
 			if ( bp_is_current_action( $this->slug ) ) {
 				add_filter( 'bp_group_user_has_access',   array( $this, 'group_access_protection' ), 10, 2 );
-				add_action( 'bp_template_content_header', create_function( '', 'echo "' . esc_attr( $this->name ) . '";' ) );
-				add_action( 'bp_template_title',          create_function( '', 'echo "' . esc_attr( $this->name ) . '";' ) );
+
+				$extension_name = $this->name;
+				add_action( 'bp_template_content_header', function() use ( $extension_name ) {
+					echo esc_attr( $extension_name );
+				} );
+				add_action( 'bp_template_title', function() use ( $extension_name ) {
+					echo esc_attr( $extension_name );
+				} );
 			}
 		}
 
@@ -1196,10 +1202,15 @@ class BP_Group_Extension {
 		$group_id = isset( $_GET['gid'] ) ? (int) $_GET['gid'] : 0;
 		$screen   = $this->screens['admin'];
 
+		$extension_slug = $this->slug;
+		$callback = function() use ( $extension_slug ) {
+			do_action( 'bp_groups_admin_meta_box_content_' . $extension_slug, $group_id );
+		};
+
 		add_meta_box(
 			$screen['slug'],
 			$screen['name'],
-			create_function( '', 'do_action( "bp_groups_admin_meta_box_content_' . $this->slug . '", ' . $group_id . ' );' ),
+			$callback,
 			get_current_screen()->id,
 			$screen['metabox_context'],
 			$screen['metabox_priority']
diff --git src/bp-members/bp-members-screens.php src/bp-members/bp-members-screens.php
index 34f7c4e01..ece83582b 100644
--- src/bp-members/bp-members-screens.php
+++ src/bp-members/bp-members-screens.php
@@ -183,11 +183,6 @@ function bp_core_screen_signup() {
 		// Add any errors to the action for the field in the template for display.
 		if ( !empty( $bp->signup->errors ) ) {
 			foreach ( (array) $bp->signup->errors as $fieldname => $error_message ) {
-				/*
-				 * The addslashes() and stripslashes() used to avoid create_function()
-				 * syntax errors when the $error_message contains quotes.
-				 */
-
 				/**
 				 * Filters the error message in the loop.
 				 *
@@ -195,7 +190,9 @@ function bp_core_screen_signup() {
 				 *
 				 * @param string $value Error message wrapped in html.
 				 */
-				add_action( 'bp_' . $fieldname . '_errors', create_function( '', 'echo apply_filters(\'bp_members_signup_error_message\', "<div class=\"error\">" . stripslashes( \'' . addslashes( $error_message ) . '\' ) . "</div>" );' ) );
+				add_action( 'bp_' . $fieldname . '_errors', function() use ( $error_message ) {
+					echo apply_filters( 'bp_members_signup_error_message', "<div class=\"error\">" . $error_message . "</div>" );
+				} );
 			}
 		} else {
 			$bp->signup->step = 'save-details';
diff --git src/bp-templates/bp-legacy/buddypress-functions.php src/bp-templates/bp-legacy/buddypress-functions.php
index ade8604a1..331f375e8 100644
--- src/bp-templates/bp-legacy/buddypress-functions.php
+++ src/bp-templates/bp-legacy/buddypress-functions.php
@@ -1611,10 +1611,10 @@ function bp_legacy_theme_ajax_messages_send_reply() {
 		bp_messages_embed();
 
 		// Add new-message css class.
-		add_filter( 'bp_get_the_thread_message_css_class', create_function( '$retval', '
-			$retval[] = "new-message";
+		add_filter( 'bp_get_the_thread_message_css_class', function( $retval ) {
+			$retval[] = 'new-message';
 			return $retval;
-		' ) );
+		} );
 
 		// Output single message template part.
 		bp_get_template_part( 'members/single/messages/message' );
diff --git src/bp-templates/bp-legacy/buddypress/members/single/messages/message.php src/bp-templates/bp-legacy/buddypress/members/single/messages/message.php
index 70ab06d54..b0a5686e9 100644
--- src/bp-templates/bp-legacy/buddypress/members/single/messages/message.php
+++ src/bp-templates/bp-legacy/buddypress/members/single/messages/message.php
@@ -12,7 +12,6 @@
  */
 
 ?>
-
 			<div class="message-box <?php bp_the_thread_message_css_class(); ?>">
 
 				<div class="message-metadata">
diff --git src/bp-templates/bp-nouveau/includes/messages/ajax.php src/bp-templates/bp-nouveau/includes/messages/ajax.php
index c14a0a21d..ef8b5e149 100644
--- src/bp-templates/bp-nouveau/includes/messages/ajax.php
+++ src/bp-templates/bp-nouveau/includes/messages/ajax.php
@@ -60,7 +60,9 @@ function bp_nouveau_ajax_messages_send_message() {
 	}
 
 	// Trim @ from usernames
-	$recipients = apply_filters( 'bp_messages_recipients', array_map( create_function( '$r', "return trim( \$r, '@' );" ), $_POST['send_to'] ) );
+	$recipients = apply_filters( 'bp_messages_recipients', array_map( function( $username ) {
+		return trim( $r, '@' );
+	}, $_POST['send_to'] ) );
 
 	// Attempt to send the message.
 	$send = messages_new_message( array(
