Untitled
unknown
plain_text
2 years ago
2.0 kB
9
Indexable
<?php class Reader { protected $data; function read($dir) { //$this dir to array } function getData() { return $this->data; } function exportToArray() { $data=[]; foreach ($this->data as $key => $value) { array_push($data, ((array)$value)); } return $data; } function exportToTable() { $string = '<table>'; foreach ($this->data as $key => $value) { $string .= "<tr>"; foreach ($value as $k => $v) { $string .= "<td>$v</td>"; } $string .= "</tr>"; } $string .= '</table>'; return $string; } function addRow($data) { $this->data[] = $data; } function removeRow(int $number) { unset($this->data[$number - 1]); return $this; } function special(int $row, string $option) { $data = $this->data[$row]; //cpy switch ($option) { case 'sort': { sort($data); $this->data[$row] = $data; break; } case 'capitalize': { foreach ($data as $key => $value) $data[$key] = strtoupper($value); $this->data[$row] = $data; break; } } return $this; } } class JsonReader extends Reader { function read($dir) { if (file_exists($dir)) { $this->data = json_decode(file_get_contents($dir)); } else { $this->data = json_decode("$dir"); } return $this; } } class CsvReader extends Reader { } $json = new JsonReader(); $json->read(json_encode([['name' => 'younes', 'family' => 'mokhtari'], ['name' => 'younes', 'family' => 'mokhtari']])); // var_dump($json->getData()); var_dump($json->exportToTable());
Editor is loading...