SAND-framework/application/class/Modele.php

40 lines
1.6 KiB
PHP
Raw Normal View History

2017-06-13 22:54:16 +02:00
<?php
namespace MVC\Classe;
2020-12-09 10:26:26 +01:00
class Modele
{
public $page;
public function __construct($base_param)
{
if (file_exists(MODELS_PATH.DIRECTORY_SEPARATOR.$base_param['name'].'.model')) {
$fichier = file(MODELS_PATH.DIRECTORY_SEPARATOR.$base_param['name'].'.model');
foreach ($fichier as $ligne_num => $ligne) {
//on recherche le pattern des parametres
if (preg_match("#[ ]*([a-zA-Z_+]*)[ ]*[:][ ]*([a-zA-Z0-9-_+'\{\,\ \}\(\)]*[ ]*)#", $ligne, $matches)) {
//on recherche le pattern des tableau dans la valeur du paramètre
if (preg_match("#{.*}#", $matches[2])) {
if (preg_match_all("#(?<capture>[0-9a-zA-Z-_+]*)#", $matches[2], $arrayMatches)) {
$array = array();
foreach ($arrayMatches['capture'] as $val) {
if ($val != '') {
$array[] = $val;
}
}
$this->page[$matches[1]] = $array;
continue;
}
}
2019-03-05 13:26:50 +01:00
$this->page[$matches[1]] = $matches[2];
}
}
2019-03-05 16:49:15 +01:00
$this->page['url_params'] = $base_param['params'];
2020-12-09 10:26:26 +01:00
} else {
$this->page['name'] = $base_param['name'];
$this->page['description'] = $base_param['description'];
$this->page['params'] = $base_param['params'];
}
}
2017-06-13 22:54:16 +02:00
}