Skip to content

Cannot read Floating Point vairable #124

@landreww

Description

@landreww

Receiving error trying to read dbf. The script is failing trying to read floating point fields.
Thanks for your help.

Here is the script:

<?php

require_once $_SERVER['MY_ROOT_DIR'] . '/vendor/autoload.php';
use XBase\TableReader;

$db = "D:\laragon\webdata\downloads\COUNTIES\Osceola\OsceolaTaxParcels.dbf";
$table = new TableReader($db);

while ($record = $table->nextRecord()) {
    //echo $record->get('my_column');
    //or
    echo $record->my_column;
}

Here are the columns:
parcelid (C 50)systemendd (D 8)area (F 19)perimeter (F 19)last_edite (D 8)simcondivt (C 50)pin (C 18)strap (C 65)dsp_strap (C 23)sec (C 2)twnshp (C 2)range (C 12)sub (C 12)blk (C 12)lot (C 12)subname (C 75)streetnumb (C 50)streetpfx (C 50)streetname (C 50)streetsfx (C 50)streetsfxd (C 50)loccity (C 50)loczip (C 10)condounit (C 50)condocompl (C 50)owner1 (C 75)owner2 (C 75)owner3 (C 75)billingadd (C 50)billinga_1 (C 50)billinga_2 (C 50)city (C 50)state (C 50)zip (C 50)country (C 50)zone1 (C 12)census (C 12)dorcode (C 4)dordesc (C 50)yearbuilt (N 5)effyr (N 5)totalacres (N 11)grossbldar (N 16)bldcode (C 4)buildtype (C 50)bldcode2 (C 4)buildtype2 (C 50)bldcode3 (C 4)buildtype3 (C 50)finarea (N 16)numofbuild (N 16)storyheigh (N 5)livunits (N 5)bedrooms (N 5)fullbaths (N 5)halfbaths (N 5)otherfixtu (N 5)kitchens (N 5)fireplaces (N 5)heattype (C 50)basementar (N 16)finbasemen (N 16)rooftype (C 50)roofcover (C 50)extwall (C 50)intwall (C 50)attachedga (N 16)detachedga (C 12)pool (N 10)frame (C 50)floor (C 50)baseyear (N 5)grade (C 12)quality (C 50)orbkpg (C 50)saledate (D 8)saleprice (N 16)nal (C 100)nalcode (C 4)q_u (C 1)grantor (C 60)stamps (N 19)soldasvaca (N 5)instrument (C 12)prevorbkpg (C 50)prevsaleda (D 8)prevsalepr (N 16)prevnal (C 100)prevnalcod (C 4)prevq_u (C 1)prevgranto (C 60)prevstamps (N 19)prevsoldas (N 5)previnstr (C 12)legaldescs (C 150)jurisdicti (C 4)jurisdesc (C 50)buildfacto (N 13)land1dor (C 4)land1dorde (C 50)land1units (N 19)land1ff (N 19)land1depth (N 19)land1unitt (C 4)land1uni_1 (C 12)land1ubpri (N 19)land2dor (C 4)land2dorde (C 50)land2units (N 19)land2ff (N 19)land2depth (N 19)land2unitt (C 4)land2uni_1 (C 12)land2ubpri (N 19)land3dor (C 4)land3dorde (C 50)land3units (N 19)land3ff (N 19)land3depth (N 19)land3unitt (C 4)land3uni_1 (C 12)land3ubpri (N 19)xfob1type (C 4)xfob1desc (C 12)xfob1size (C 50)xfob1year (N 10)xfob2type (C 4)xfob2desc (C 12)xfob2size (C 50)xfob2year (N 10)xfob3type (C 4)xfob3desc (C 12)xfob3size (C 50)xfob3year (N 10)comment (C 254)exemptions (C 25)exemption1 (C 4)exemptio_1 (C 50)exemptio_2 (N 10)exemption2 (C 4)exemptio_3 (C 50)exemptio_4 (N 10)exemption3 (C 4)exemptio_5 (C 50)exemptio_6 (N 10)assessedva (N 10)currland (N 10)curragcred (N 10)currbldg (N 10)currxfob (N 10)currjust (N 10)currexempt (N 10)estimatedt (N 10)latestprev (N 5)rolltype (C 4)prevfullla (N 10)prevagcred (N 10)prevlandle (N 10)prevbldg (N 10)prevxfob (N 10)prevassess (N 10)prevexempt (N 10)prevtaxabl (N 10)distgroup (C 4)numofunits (N 5)lastupdate (D 8)cra (C 50)

Here is the error:

[19-Apr-2024 17:03:46 UTC] PHP Fatal error:  Uncaught XBase\Exception\InvalidColumnException: Cannot find Field for `F` data type in D:\laragon\vendor\hisamu\php-xbase\src\DataConverter\Record\DBaseDataConverter.php:92
Stack trace:
#0 D:\laragon\vendor\hisamu\php-xbase\src\DataConverter\Record\DBaseDataConverter.php(102): XBase\DataConverter\Record\DBaseDataConverter->findFieldConverter(Object(XBase\Header\Column))
#1 D:\laragon\vendor\hisamu\php-xbase\src\DataConverter\Record\DBaseDataConverter.php(62): XBase\DataConverter\Record\DBaseDataConverter->normalizeField(Object(XBase\Header\Column), '  6.44169946289...')
#2 D:\laragon\vendor\hisamu\php-xbase\src\Record\RecordFactory.php(32): XBase\DataConverter\Record\DBaseDataConverter->fromBinaryString(' 35252748460001...')
#3 D:\laragon\vendor\hisamu\php-xbase\src\TableReader.php(154): XBase\Record\RecordFactory::create(Object(XBase\Table\Table), Object(XBase\DataConverter\Encoder\IconvEncoder), 0, ' 35252748460001...')
#4 D:\laragon\public_html\code\admin\dbf-test.php(9): XBase\TableReader->nextRecord()
# in D:\laragon\vendor\hisamu\php-xbase\src\DataConverter\Record\DBaseDataConverter.php on line 92

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions