abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:22 | Zajímavý projekt

    Francouzská veřejná správa má v rámci vládní iniciativy LaSuite Numérique ('Digitální sada') v plánu od roku 2027 přestat používat Microsoft Teams a Zoom a přejít na videokonferenční platformu Visio, hostovanou na vlastním hardwaru. Konkrétně se jedná o instance iniciativou vyvíjeného open-source nástroje LaSuite Meet, jehož centrální komponentou je LiveKit. Visio nebude dostupné pro veřejnost, nicméně LaSuite Meet je k dispozici pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 5
    dnes 12:11 | IT novinky

    Eben Upton oznámil další zdražení počítačů Raspberry Pi: 2GB verze o 10 dolarů, 4GB verze o 15 dolarů, 8GB verze o 30 dolarů a 16GB verze o 60 dolarů. Kvůli růstu cen pamětí. Po dvou měsících od předchozího zdražení.

    Ladislav Hagara | Komentářů: 9
    dnes 05:11 | Zajímavý software

    Shellbeats je terminálový hudební přehrávač pro Linux a macOS, který umožňuje vyhledávat a streamovat hudbu z YouTube, stahovat odtud skladby a spravovat lokální playlisty. Pro stahování dat z YouTube využívá yt-dlp, pro práci s audiostreamy mpv. Je napsán v jazyce C a distribuován pod licencí GPL-3.0, rezpozitář projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 6
    dnes 03:22 | Nová verze

    Byla vydána nová verze 26.1.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. S podporou hardwarového dekódování videa. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    dnes 03:00 | Nová verze

    LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), byl po deseti měsících od vydání verze 1.3 vydán ve verzi 2.0.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Zdrojové kódy LibrePCB jsou k dispozici na GitHubu pod licencí GPLv3.

    Ladislav Hagara | Komentářů: 2
    včera 21:11 | Komunita

    Guido van Rossum, tvůrce programovacího jazyka Python, oslavil 70. narozeniny. Narodil se 31. ledna 1956 v nizozemském Haarlemu.

    Ladislav Hagara | Komentářů: 11
    včera 12:22 | Zajímavý software

    OpenClaw je open-source AI asistent pro vykonávaní různých úkolů, ovládaný uživatelem prostřednictvím běžných chatovacích aplikací jako jsou například WhatsApp, Telegram nebo Discord. Asistent podporuje jak různé cloudové modely, tak i lokální, nicméně doporučován je pouze proprietární model Claude Opus 4.5 od firmy Anthropic v placené variantě. GitHubová stránka projektu OpenClaw.

    NUKE GAZA! 🎆 | Komentářů: 4
    včera 03:00 | Komunita

    Projekt VideoLAN a multimediální přehrávač VLC (Wikipedie) dnes slaví 25 let. Vlastní, tenkrát ještě studentský projekt, začal již v roce 1996 na vysoké škole École Centrale Paris. V první únorový den roku 2001 ale škola oficiálně povolila přelicencování zdrojových kódů na GPL a tím pádem umožnila používání VLC mimo akademickou půdu.

    Ladislav Hagara | Komentářů: 3
    31.1. 18:11 | Humor

    Moltbook je sociální síť podobná Redditu, ovšem pouze pro agenty umělé inteligence - lidé se mohou účastnit pouze jako pozorovatelé. Agenti tam například rozebírají podivné chování lidí, hledají chyby své vlastní sociální sítě, případně spolu filozofují o existenciálních otázkách 🤖.

    NUKE GAZA! 🎆 | Komentářů: 3
    31.1. 18:00 | Humor

    scx_horoscope je „vědecky pochybný, kosmicky vtipný“ plně funkční plánovač CPU založený na sched_ext. Počítá s polohami Slunce a planet, fázemi měsíce a znameními zvěrokruhu. Upozornil na něj PC Gamer.

    |🇵🇸 | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (10%)
     (24%)
     (3%)
     (5%)
     (2%)
     (11%)
     (31%)
    Celkem 731 hlasů
     Komentářů: 24, poslední dnes 21:31
    Rozcestník

    Dotaz: Náhrada řetězde preg_replace_callback nefunguje

    6.1.2020 15:08 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Náhrada řetězde preg_replace_callback nefunguje
    Přečteno: 537×
    Dobrý den. Mořím se tady s kouskem kódu, který se nechová podle očekávání, a nevím proč.
    
    729 if( $debug ) trigger_error( '$replace: '.hppre($replace) );
    $replace = preg_replace_callback('/=([0-9a-f]{2})/i',
    	function($matches)use($debug){
    732		if( $debug ) trigger_error( 'konverze : '.$matches[1].' na '.hexdec($matches[1]).' - '.chr(hexdec($matches[1])) );
    		return chr(hexdec($matches[1]));},
    
    	
    	$replace);
    736 if( $debug ) trigger_error( '$replace: '.hppre($replace) );
    
    naplácal jsem tam triggery, abych odsledoval stavy proměnných ( xdebug nemám, neumím , no... ) a výstup je tento :
     time :+ 0,2523 s : USER : V souboru /data/srv/www/sqmail/functions/mime.php na řádce 729
    $replace:
    
    Marie Kratochv=EDlov=E1
    
    .
    time :+ 0,2523 s : USER : V souboru /data/srv/www/sqmail/functions/mime.php na řádce 732
    konverze : ED na 237 - í.
    time :+ 0,2523 s : USER : V souboru /data/srv/www/sqmail/functions/mime.php na řádce 732
    konverze : E1 na 225 - á.
    time :+ 0,2523 s : USER : V souboru /data/srv/www/sqmail/functions/mime.php na řádce 736
    $replace:
    
    .
    

    Čili z $replace zůstane jen nový řádek ( podle všeho ).

    Když modifikuji callback funkci, aby vracela jen hexdec($matches[1]), tak to funguje, samozřejmě v stringu jsou sprostá čísla, ale převod vrací výraz, kde je vidět, že se vstupem se něco - podle očekávání - dělo. Funkce chr to ale zabije a výsledkem je prázdný string. Mám tu php7.? na ubuntu bionic. Čumím na to už tři hodiny, a nevidím nic, co by mně navedlo k opravě tohoto kousku kódu.

    hppre je moje funkce uzavírající print_r( cosik, 1 ) do <pre> tagu ...

    Mimochodem jde o knihovnu z Squirrellmailu. ( no, nebudete věřit, ale naše starší kolegyně nechtějí jiný, ač jim nabízím přejít na mnohem funkčnější Roudcube ... ) to jen tak mimochodem.

    Děkuji předem za nasměrování k řešení uvedeného problému.

    Milan.

    Řešení dotazu:


    Odpovědi

    6.1.2020 17:37 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Náhrada řetězde preg_replace_callback nefunguje
    Vyzkoušej funkci quoted_printable_decode().

    BTW: nemáš tam náhodou problém s indexy? V PHP jsou od nuly...
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    6.1.2020 17:49 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Náhrada řetězde preg_replace_callback nefunguje
    Ještě jeden poznatek: Nikde neuvádíš kódování. String je zřejmě v ISO-Latin-2 nebo ve Windows-1250, ale PHP7 má defaultní sadu UTF-8.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    6.1.2020 18:34 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Náhrada řetězde preg_replace_callback nefunguje
    Jaký význam má kódováni ? preg_replace zajímá kódování ?

    Ten kód převádí QP "escapované" znay do bytestringové podoby. Pokud by preg_replace fungoval v multibyte, pak by ho to mohlo rozhodit, to ano, a taky by to vysvětlovalo, proč při vyhození char() přece jen výstup nějaký byl ... ale zkoušet můžu až zítra.

    V tom programu se nastavuje setlocale na češtinu cs_CZ.UTF8 ( tedy dle configu ) někde brzy ze začátku ..

    Nevím, co mám zkusit ?
    Řešení 1× (Milan Uhrák (tazatel))
    6.1.2020 23:56 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Náhrada řetězde preg_replace_callback nefunguje
    echo iconv('windows-1250', 'UTF-8', $replace);
    
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.1.2020 12:15 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: Náhrada řetězde preg_replace_callback nefunguje
    Abych své hodnocení ( řešení ) vysvětlil, to, co tiskl print_r bylo jen nereprezentovatelné, proto netiskl nic. strlen( $replace ) ale hodil 19, čili jsem celou dobu bloudil v mlhách omylu.

    Děkuji za nakopnutí.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.