You are here

function finder_export in Finder 7

Same name and namespace in other branches
  1. 6 finder.module \finder_export()
  2. 7.2 finder.module \finder_export()

Build finder code string recursively.

1 call to finder_export()
finder_admin_export in includes/finder.admin.inc
Admin finder export page.
2 string references to 'finder_export'
finder_admin_export in includes/finder.admin.inc
Admin finder export page.
finder_autocomplete_finderapi in modules/finder_autocomplete/finder_autocomplete.module
Implements hook_finder_api().

File

./finder.module, line 1419
The finder module.

Code

function finder_export($var, $iteration = 0) {
  $tab = '';
  for ($i = 0; $i < $iteration; $i++) {
    $tab = $tab . '  ';
  }
  $iteration++;
  if (is_object($var)) {
    $var = (array) $var;
    $var['#_finder_object'] = '1';
  }
  if (is_array($var)) {
    $empty = empty($var);
    $code = "array(" . ($empty ? '' : "\n");
    foreach ($var as $key => $value) {
      $out = $tab . "  '" . $key . "' => " . finder_export($value, $iteration) . ",\n";
      drupal_alter('finder_export', $out, $tab, $key, $value, $iteration);
      $code .= $out;
    }
    $code .= ($empty ? '' : $tab) . ")";
    return $code;
  }
  else {
    if (is_string($var)) {
      return "'" . addslashes($var) . "'";
    }
    elseif (is_numeric($var)) {
      return $var;
    }
    elseif (is_bool($var)) {
      return $var ? 'TRUE' : 'FALSE';
    }
    else {
      return 'NULL';
    }
  }
}