Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:108872 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 2587 invoked from network); 5 Mar 2020 16:54:20 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 5 Mar 2020 16:54:20 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id B93081804DA for ; Thu, 5 Mar 2020 07:13:58 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS8560 212.227.0.0/16 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 5 Mar 2020 07:13:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1583421235; bh=ZVocYQrpw7F3FX65GxgHtRgyIkUtkwx5+8eJZYTiMCU=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=U7IyEXYNg1tJK4XGL8ASgURJJ0lWIUO9qP7TCDCKoPTQpKa3f/c/14KVGxUbGSfRQ QJJsNzYevv4uwCHB3U0xrll0ICNl1Yva+1f/RHmbxCjWM3Q305QtQgod7US2qYR1hf DLC2ot/5Ip1FgyTjfC4kK5MpNKqhxCvidFmaCa0s= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.2.130] ([84.179.232.93]) by mail.gmx.com (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MmDIu-1jaRZT2qBs-00iAhU; Thu, 05 Mar 2020 16:13:55 +0100 To: Rowan Tommins , PHP internals References: <09dd1b84-ed33-a059-82f9-5efd179e69d6@gmx.de> <0233ec6d-267f-a5e4-b114-17b4c9bbff60@alec.pl> Message-ID: <6c177180-e5cb-7446-4ab4-0250aa3cb16c@gmx.de> Date: Thu, 5 Mar 2020 16:13:55 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:ln8rzewdw1w7aiA3Toqit8tH43/xVcAE9nxZxe4TMwLee4dByJA n8awT/bzuOQNAckq43w3hfdUECTGedJCZ8c9Jrt04nYkVUQT4JTH6/HY3NvN8H1TngI7hr7 VKo13R3HsZQsnUhJpcX3OmA4MqW1iJ64Q9EnrxQ8nGvozyvYdFYvpeN5nJMEU6C9NmqAnFW oBU9yN1OacSCjigql2n6g== X-UI-Out-Filterresults: notjunk:1;V03:K0:qrPw1ses0eQ=:DHB+aS4JqGOB2bCaREQGMY mJlvlbkkgYHOflR0evC0jrpmo6zf1hNlS32CocVTRikhMRVP5ee2/UQZ+fL9RGs2oTGxaH6nd JtJJb1cElYDa+H3JXjOIN7VQlwHbMBssvpkKq2BaAR4CWO3MzWT6DsAG3ksOkDclGomi812uQ 3nbgZNcb5sw6jwzzmAOiAi8G0Q+L6JixSnX1zDqsknt6LAdmFRUqjNk7lRNQNq34YRyTXrQs/ XzNNzFkitB9tNaaPRUOix8bvDfFzH/x9PELtfHGmTS2rlsqOIU9l8c5DDHnmGgsi+mq3jGVan X2IA8lrlcBPuEFRPdGiZ27lw7tlx5Xx4RLVxkpZtE6Iz6K4qzKNNtz54rk6TkH0ttMEHd0lfL RFFaCejELrQMINZH0cTgfwXefp14hfUSkKghCZU/WgesM2N+BT4NZdDC1cbFyipUlnZgThhQM 7KHkRTdoiZYgq8gjn1ypzSFl8sWGKwNf4dt/kCQkzyaH3yWeLs5xbO8e222Zyttzl8/RgDDpu ygiGWno2pZgtRQsFnhpvyhJ/DZNEswHiOa5aRmgQnDmzr0mzsQAmYrDFtiKAidA4PG6FfWfQ8 zT+iO7kZxyIB3EFdgGzYKV9reC4gNQQopvf7Ez3YK5zX+LKXOGON+INK34+yMi040i5bD+Zzo Va+wt98YIN8Ye1adwZvecU1RHqL+zXcOx48+MFA9gqqcjReDLU1G+NI+TkXs6uN4qbIumWdXy z8fTe+Kexbo9ndcNXndoTnFTvgz96rj5Z2S90doPXLZ9HfElBm0uKoDguKUCAdnSs1JXrjbD1 3ooQERxkvpTv7yjKS7Z64PkCvHoOpOuFyrVindm2cr2Dv2K2fqIW5slf8P4XipH1rzXRjkosq 9kUDIfDgTpsxzvij19JWEkeAITbWVzAtUBpQa5Obnsf2K1VkZMjN5ciEMEuTCnihyWjgFRXZX pQXvi8mogMiWcQu+VRk8Ra5Z6N1CI+pI64H7d0lHkXlFJwMCsO4oNNTHFqmUrPsaHPB3cpXpq uSYHnhyEIdt+XTtBUIvLgQmBR1krHncXnlEfxytO1tlkSKN1FJRD7JYmBp2JQSuZriM8n0RRD uQ1RE9gpgSxnTpLxDoVlra7fUHEmt6WLwtFSdFT9xMOoNBA+d4jRaDGrzelvsuMbouQK8e0ia nryUc/QntH7mHAslj5Y98wNq5Sx6Mts2XW3NaFPsvPDDZSg/vbmsrDhtYdnhknrtc6w6S520Y 3nlt2tjMCo+/wrQy5 Subject: Re: [PHP-DEV] iconv vs. mbstring From: cmbecker69@gmx.de ("Christoph M. Becker") On 05.03.2020 at 15:33, Rowan Tommins wrote: > On Thu, 5 Mar 2020 at 11:59, Aleksander Machniak wrote: > >> Also, I have a case in which iconv_* functions were much much slower >> than mbstring. See wordwrap implementation in >> >> https://github.com/roundcube/roundcubemail/blob/master/program/lib/Roun= dcube/rcube_mime.php#L589 > > Either I misread, or you did: I thought that's exactly what Christoph wa= s > saying, that iconv_* functions will be slower because they basically do > convert-process-unconvert rather than having implementations for each > encoding. So mb_strlen will always be faster than iconv_strlen. > > iconv() vs mb_convert_encoding() doesn't have the same penalty. It seems > quite plausible that a library dedicated to converting charsets would be > more optimised for that job than a single function in a larger library > mainly focussed on working with one charset at a time. I should add that all my testing was done solely with a current libiconv version (on Windows); I don't know how libc's ivonc() and other implementations might perform. =2D- Christoph M. Becker