Skip to content

Commit 397013e

Browse files
committed
Table getLanguageCode
1 parent f2491e9 commit 397013e

File tree

4 files changed

+21
-7
lines changed

4 files changed

+21
-7
lines changed

src/XBase/Table.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
use XBase\Column\ColumnFactory;
66
use XBase\Column\ColumnInterface;
77
use XBase\Column\DBase7Column;
8+
use XBase\Enum\Codepage;
89
use XBase\Enum\TableType;
910
use XBase\Exception\TableException;
1011
use XBase\Memo\MemoFactory;
@@ -54,9 +55,12 @@ class Table
5455
public $encrypted;
5556
/** @var string */
5657
public $mdxFlag;
58+
5759
/**
5860
* @var string Language codepage.
5961
* @see https://blog.codetitans.pl/post/dbf-and-language-code-page/
62+
*
63+
* @deprecated in 1.2 and will be protected in 1.3. Use getLanguageCode() method.
6064
*/
6165
public $languageCode;
6266

@@ -411,6 +415,16 @@ public function getVersion()
411415
return $this->version;
412416
}
413417

418+
/**
419+
* @see Codepage
420+
*
421+
* @return int
422+
*/
423+
public function getLanguageCode(): int
424+
{
425+
return ord($this->languageCode);
426+
}
427+
414428
public function getMemo(): ?MemoInterface
415429
{
416430
return $this->memo;

tests/DBaseTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public function testRead(): void
3232
self::assertSame(false, $table->inTransaction);
3333
self::assertSame(false, $table->encrypted);
3434
self::assertSame(TableFlag::NONE, ord($table->mdxFlag));
35-
self::assertSame(0, ord($table->languageCode));
35+
self::assertSame(0, $table->getLanguageCode());
3636

3737
$columns = $table->getColumns();
3838
self::assertIsArray($columns);
@@ -178,7 +178,7 @@ public function testDbase3(): void
178178
self::assertSame(false, $table->inTransaction);
179179
self::assertSame(false, $table->encrypted);
180180
self::assertSame(TableFlag::NONE, ord($table->mdxFlag));
181-
self::assertSame(0x03, ord($table->languageCode));
181+
self::assertSame(0x03, $table->getLanguageCode());
182182

183183
$this->assertRecords($table);
184184
$this->assertMemoImg($table);
@@ -200,7 +200,7 @@ public function testDbase4(): void
200200
self::assertSame(false, $table->inTransaction);
201201
self::assertSame(false, $table->encrypted);
202202
self::assertSame(TableFlag::NONE, ord($table->mdxFlag));
203-
self::assertSame(0x03, ord($table->languageCode));
203+
self::assertSame(0x03, $table->getLanguageCode());
204204

205205
$this->assertRecords($table);
206206
$this->assertMemoImg($table);

tests/FoxproTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public function testRead(): void
2222
self::assertSame(false, $table->inTransaction);
2323
self::assertSame(false, $table->encrypted);
2424
self::assertSame(TableFlag::NONE, ord($table->mdxFlag));
25-
self::assertSame(0x64, ord($table->languageCode));
25+
self::assertSame(0x64, $table->getLanguageCode());
2626

2727
self::assertSame(12, $table->getColumnCount());
2828
// self::assertSame(10, $table->getRecordCount());
@@ -67,7 +67,7 @@ public function testFoxpro2(): void
6767
self::assertSame(false, $table->inTransaction);
6868
self::assertSame(false, $table->encrypted);
6969
self::assertSame(TableFlag::NONE, ord($table->mdxFlag));
70-
self::assertSame(0x03, ord($table->languageCode));
70+
self::assertSame(0x03, $table->getLanguageCode());
7171

7272
$this->assertRecords($table);
7373
$this->assertMemoImg($table);

tests/VisualFoxproTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public function testRead(): void
2424
self::assertSame(false, $table->inTransaction);
2525
self::assertSame(false, $table->encrypted);
2626
self::assertSame(TableFlag::CDX | TableFlag::MEMO, ord($table->mdxFlag));
27-
self::assertSame(0x03, ord($table->languageCode));
27+
self::assertSame(0x03, $table->getLanguageCode());
2828
self::assertSame(15, $table->getColumnCount());
2929
self::assertSame(0, $table->getRecordCount());
3030

@@ -64,7 +64,7 @@ public function testVfp(): void
6464
self::assertSame(false, $table->inTransaction);
6565
self::assertSame(false, $table->encrypted);
6666
self::assertSame(TableFlag::MEMO, ord($table->mdxFlag));
67-
self::assertSame(0x03, ord($table->languageCode));
67+
self::assertSame(0x03, $table->getLanguageCode());
6868

6969
$columns = $table->getColumns();
7070

0 commit comments

Comments
 (0)