PHP code example of drupal-utils / entity-convert

1. Go to this page and download the library: Download drupal-utils/entity-convert library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

drupal-utils / entity-convert example snippets


use Drupal\node\Entity\Node;

$node = Node::load(1);
$node->toArray();


$node = Node::load(1);
$field_boolean_value = $node->get('field_boolean_value')->value;

// Accessing the values of BaseFields is easy.

$nid = $node->id();
$title = $node->getTitle();
$type = $node->getType();
$isPromoted = $node->isPromoted();

$field_boolean_value = $node->get('field_bool_multi_value')->value;
var_dump($field_boolean_value);
string(1) "1"

$field_datetime_multi_value = $node->get('field_datetime_multi_value')->value;
var_dump($field_datetime_multi_value);
string(19) "2022-08-31T00:31:28"

$field_date_multi_value = $node->get('field_date_multi_value')->value;
var_dump($field_date_multi_value);
array(2) { [0]=> array(1) { ["value"]=> string(10) "2022-08-14" } [1]=> array(1) { ["value"]=> string(10) "2022-08-31" } }

$field_email_multi_value = $node->get('field_email_multi_value')->value;
var_dump($field_email_multi_value);
array(2) { [0]=> array(1) { ["value"]=> string(24) "[email protected]" } [1]=> array(1) { ["value"]=> string(25) "[email protected]" } }

$field_file_multi_value = $node->get('field_file_multi_value')->value;
var_dump($field_file_multi_value);
array(1) { [0]=> array(3) { ["target_id"]=> string(1) "3" ["display"]=> string(1) "1" ["description"]=> string(8) "CSV File" } }

$field_listtext_multi_value = $node->get('field_listtext_multi_value')->getValue();
var_dump($field_listtext_multi_value);
array(2) { [0]=> array(1) { ["value"]=> string(5) "apple" } [1]=> array(1) { ["value"]=> string(4) "ball" } } 

use Drupal\node\Entity\Node;
// Include the library.
use DrupalUtils\EntityConvert\EntityConvert;
 
// Load instance of node
$node = Node::load(1);
 
// Creating a new Instance.
$entityConvert = new EntityConvert();
 
// Pass on the Node object to get the parsed value as array.
$parsedNode = $entityConvert->toArray($node, false);

// Pass on the Node object to get the parsed value as array.
$parsedNode = $entityConvert->toArray($node, false);

var_dump($parsedNode);

^ array:42 [▼
  "nid" => 1
  "uuid" => "8270a03c-a95f-4033-84a7-361597b581a9"
  "vid" => 39
  "langcode" => "en"
  "type" => 0
  "revision_timestamp" => 1660994564
  "revision_uid" => 1
  "revision_log" => null
  "status" => true
  "uid" => 1
  "title" => "Car 1"
  "created" => 1659367826
  "changed" => 1660994564
  "promote" => true
  "sticky" => true
  "default_langcode" => true
  "revision_default" => true
  "revision_translation_affected" => true
  "path" => array:3 [▶]
  "field_bool_multi_value" => array:1 [▼
    0 => true
  ]
  "field_comments_single_value" => array:1 [▶]
  "field_content_multi_value" => array:1 [▶]
  "field_datetime_multi_value" => array:1 [▼
    0 => "2022-08-31T00:31:28"
  ]
  "field_date_multi_value" => array:2 [▼
    0 => "2022-08-14"
    1 => "2022-08-31"
  ]
  "field_email_multi_value" => array:2 [▼
    0 => "[email protected]"
    1 => "[email protected]"
  ]
  "field_file_multi_value" => array:1 [▼
    0 => array:11 [▼
      "fid" => "3"
      "uuid" => "6eb73b6e-be50-449e-a57d-bccf9d6b0bc0"
      "langcode" => "en"
      "uid" => "1"
      "filename" => "testing.csv"
      "uri" => "public://2022-08/testing.csv"
      "filemime" => "text/csv"
      "filesize" => "96"
      "status" => "1"
      "created" => "1660992978"
      "changed" => "1660993028"
    ]
  ]
  "field_image_multi_value" => array:1 [▶]
  "field_link_multi_value" => array:1 [▼
    0 => array:3 [▶]
  ]
  "field_listint_multi_value" => array:1 [▶]
  "field_listtext_multi_value" => array:2 [▶]
  "field_list_multi_value" => array:1 [▶]
  "field_numberfloat_multi_value" => array:1 [▶]
  "field_numberint_multi_value" => array:1 [▶]
  "field_textflws_multi_value" => array:1 [▶]
]

// Pass on the Node object to get the parsed value as array.
$parsedNode = $entityConvert->toObject($node, true);

var_dump($parsedNode->nid);
int(1)

var_dump($parsedNode->title);
string(5) "Car 1"

var_dump($parsedNode->field_file_multi_value);
array(1) { [0]=> array(11) { ["fid"]=> string(1) "3" ["uuid"]=> string(36) "6eb73b6e-be50-449e-a57d-bccf9d6b0bc0" ["langcode"]=> string(2) "en" ["uid"]=> string(1) "1" ["filename"]=> string(40) "testing.csv" ["uri"]=> string(57) "public://2022-08/testing.csv" ["filemime"]=> string(8) "text/csv" ["filesize"]=> string(2) "96" ["status"]=> string(1) "1" ["created"]=> string(10) "1660992978" ["changed"]=> string(10) "1660993028" } } 

use DrupalUtils\EntityConvert\EntityConvert;

$entityConvert = new EntityConvert();
// $instance == Node/User/Taxonomy/File.
$entityConvert->toArray($instance, true);
$entityConvert->toObject($instance, false);

// The toArray method accepts 2 arguments.

/**
 * Parse the given entity instance and return array.
 *
 * @param Object $instance
 *   The Entity instance to parse.
 * @param Boolean $strict_type
 *   Flag indicating variable types should be preserved.
 *
 * @return array
 */
function toArray($instance, $strict_type = false);

// The toObject method accepts 2 arguments.

/**
 * Parse the given entity instance and return object.
 *
 * @param Object $instance
 *   The Entity instance to parse.
 * @param Boolean $strict_type
 *   Flag indicating variable types should be preserved.
 *
 * @return EntityInterface
 */
function toObject($instance = null, $strict_type = false)