K2LL33D SHELL

 Apache/2.4.7 (Ubuntu)
 Linux sman1baleendah 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64
 uid=33(www-data) gid=33(www-data) groups=33(www-data)
 safemode : OFF
 MySQL: ON | Perl: ON | cURL: OFF | WGet: ON
  >  / usr / share / phpmyadmin / libraries / plugins / import /
server ip : 104.21.89.46

your ip : 172.70.127.185

H O M E


Filename/usr/share/phpmyadmin/libraries/plugins/import/ShapeFile.class.php
Size2.78 kb
Permissionrw-r--r--
Ownerroot : root
Create time27-Apr-2025 10:12
Last modified05-Dec-2013 01:44
Last accessed06-Jul-2025 19:47
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* This class extends ShapeFile class to cater the following phpMyAdmin
* specific requirements.
*
* @package PhpMyAdmin-Import
* @subpackage ESRI_Shape
*/
if (! defined('PHPMYADMIN')) {
exit;
}

/**
* 1) To load data from .dbf file only when the dBase extension is available.
* 2) To use PMA_importGetNextChunk() functionality to read data, rather than
* reading directly from a file. Using ImportShp::readFromBuffer() in place
* of fread(). This makes it possible to use compressions.
*
* @package PhpMyAdmin-Import
* @subpackage ESRI_Shape
*/
class PMA_ShapeFile extends ShapeFile
{
/**
* Returns whether the 'dbase' extension is loaded
*
* @return boolean whether the 'dbase' extension is loaded
*/
function _isDbaseLoaded()
{
return extension_loaded('dbase');
}

/**
* Loads ESRI shape data from the imported file
*
* @param string $FileName not used, it's here only to match the method
* signature of the method being overidden
*
* @return void
* @see ShapeFile::loadFromFile()
*/
function loadFromFile($FileName)
{
$this->_loadHeaders();
$this->_loadRecords();
if ($this->_isDbaseLoaded()) {
$this->_closeDBFFile();
}
}

/**
* Loads metadata from the ESRI shape file header
*
* @return void
* @see ShapeFile::_loadHeaders()
*/
function _loadHeaders()
{
ImportShp::readFromBuffer(24);
$this->fileLength = loadData("N", ImportShp::readFromBuffer(4));

ImportShp::readFromBuffer(4);
$this->shapeType = loadData("V", ImportShp::readFromBuffer(4));

$this->boundingBox = array();
$this->boundingBox["xmin"] = loadData("d", ImportShp::readFromBuffer(8));
$this->boundingBox["ymin"] = loadData("d", ImportShp::readFromBuffer(8));
$this->boundingBox["xmax"] = loadData("d", ImportShp::readFromBuffer(8));
$this->boundingBox["ymax"] = loadData("d", ImportShp::readFromBuffer(8));

if ($this->_isDbaseLoaded() && $this->_openDBFFile()) {
$this->DBFHeader = $this->_loadDBFHeader();
}
}

/**
* Loads geometry data from the ESRI shape file
*
* @return void
* @see ShapeFile::_loadRecords()
*/
function _loadRecords()
{
global $eof;
ImportShp::readFromBuffer(32);
while (true) {
$record = new PMA_ShapeRecord(-1);
$record->loadFromFile($this->SHPFile, $this->DBFFile);
if ($record->lastError != "") {
return false;
}
if ($eof) {
break;
}

$this->records[] = $record;
}
}
}
?>