Compare commits
No commits in common. "5cc6b842874b8ac827ba1b7ebd869807f759b1d0" and "2a2987c4be0feba424ee1e9d4cd3c8f1f9f3e068" have entirely different histories.
5cc6b84287
...
2a2987c4be
@ -24,8 +24,6 @@
|
|||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"nulib/tests": "^8.2",
|
"nulib/tests": "^8.2",
|
||||||
"ext-mbstring": "*",
|
|
||||||
"ext-iconv": "*",
|
|
||||||
"ext-posix": "*",
|
"ext-posix": "*",
|
||||||
"ext-pcntl": "*",
|
"ext-pcntl": "*",
|
||||||
"ext-curl": "*",
|
"ext-curl": "*",
|
||||||
|
|||||||
@ -1,7 +0,0 @@
|
|||||||
# nulib\app
|
|
||||||
|
|
||||||
* [ ] ajouter des méthodes normalisées `app::get_cachedir()` et
|
|
||||||
`app::get_cachefile($name)` avec la valeur par défaut
|
|
||||||
`cachedir = $vardir/cache`
|
|
||||||
|
|
||||||
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary
|
|
||||||
@ -366,14 +366,13 @@ class CapacitorChannel implements ITransactor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* méthode appelée lors du parcours des éléments avec {@link Capacitor::each()}
|
* méthode appelée lors du parcours des éléments avec
|
||||||
|
* {@link Capacitor::each()}
|
||||||
*
|
*
|
||||||
* @param ?array $row la ligne courante. l'élément courant est accessible via
|
* @param ?array $row la ligne courante. l'élément courant est accessible via
|
||||||
* $row["item"]
|
* $row["item"]
|
||||||
* @return ?array le cas échéant, un tableau non null utilisé pour mettre à
|
* @return ?array le cas échéant, un tableau non null utilisé pour mettre à
|
||||||
* jour la ligne courante
|
* jour la ligne courante
|
||||||
* Retourner [false] pour arrêter le parcours des éléments (la ligne courante
|
|
||||||
* ainsi que les autres lignes ne sont plus mise à jour)
|
|
||||||
*
|
*
|
||||||
* - Il est possible de mettre à jour $item en le retourant avec la clé "item"
|
* - Il est possible de mettre à jour $item en le retourant avec la clé "item"
|
||||||
* - La clé primaire (il s'agit généralement de "id_") ne peut pas être
|
* - La clé primaire (il s'agit généralement de "id_") ne peut pas être
|
||||||
|
|||||||
@ -661,9 +661,7 @@ abstract class CapacitorStorage {
|
|||||||
foreach ($rows as $row) {
|
foreach ($rows as $row) {
|
||||||
$rowIds = $this->getRowIds($channel, $row);
|
$rowIds = $this->getRowIds($channel, $row);
|
||||||
$updates = $onEach->invoke([$row, ...$args]);
|
$updates = $onEach->invoke([$row, ...$args]);
|
||||||
if ($updates === [false]) {
|
if (is_array($updates) && $updates) {
|
||||||
break;
|
|
||||||
} elseif ($updates !== null) {
|
|
||||||
if (!array_key_exists("modified_", $updates)) {
|
if (!array_key_exists("modified_", $updates)) {
|
||||||
$updates["modified_"] = date("Y-m-d H:i:s");
|
$updates["modified_"] = date("Y-m-d H:i:s");
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,11 +6,6 @@ use nulib\db\pdo\Pdo;
|
|||||||
class Mysql extends Pdo {
|
class Mysql extends Pdo {
|
||||||
const PREFIX = "mysql";
|
const PREFIX = "mysql";
|
||||||
|
|
||||||
static function config_unbufferedQueries(self $mysql): void {
|
|
||||||
$mysql->db->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
|
|
||||||
}
|
|
||||||
const CONFIG_unbufferedQueries = [self::class, "config_unbufferedQueries"];
|
|
||||||
|
|
||||||
function getDbname(): ?string {
|
function getDbname(): ?string {
|
||||||
$url = $this->dbconn["name"] ?? null;
|
$url = $this->dbconn["name"] ?? null;
|
||||||
if ($url !== null && preg_match('/^mysql(?::|.*;)dbname=([^;]+)/i', $url, $ms)) {
|
if ($url !== null && preg_match('/^mysql(?::|.*;)dbname=([^;]+)/i', $url, $ms)) {
|
||||||
|
|||||||
@ -40,6 +40,11 @@ class Pdo implements IDatabase {
|
|||||||
}
|
}
|
||||||
const CONFIG_errmodeException_lowerCase = [self::class, "config_errmodeException_lowerCase"];
|
const CONFIG_errmodeException_lowerCase = [self::class, "config_errmodeException_lowerCase"];
|
||||||
|
|
||||||
|
static function config_unbufferedQueries(self $pdo): void {
|
||||||
|
$pdo->db->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
|
||||||
|
}
|
||||||
|
const CONFIG_unbufferedQueries = [self::class, "config_unbufferedQueries"];
|
||||||
|
|
||||||
protected const OPTIONS = [
|
protected const OPTIONS = [
|
||||||
\PDO::ATTR_PERSISTENT => true,
|
\PDO::ATTR_PERSISTENT => true,
|
||||||
];
|
];
|
||||||
|
|||||||
@ -276,7 +276,7 @@ class txt {
|
|||||||
* supprimer les diacritiques de la chaine $text
|
* supprimer les diacritiques de la chaine $text
|
||||||
*
|
*
|
||||||
* la translitération se fait avec les règles de la locale spécifiée.
|
* la translitération se fait avec les règles de la locale spécifiée.
|
||||||
* NB: la translitération ne fonctionne pas si LC_CTYPE == C ou POSIX
|
* NB: la translitération ne fonctionne pas si LC_CTYPE == C ou POISX
|
||||||
*/
|
*/
|
||||||
static final function remove_diacritics(?string $text, string $locale="fr_FR.UTF-8"): ?string {
|
static final function remove_diacritics(?string $text, string $locale="fr_FR.UTF-8"): ?string {
|
||||||
if ($text === null) return null;
|
if ($text === null) return null;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user