Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127741 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id A1EA81A00BC for ; Tue, 24 Jun 2025 00:55:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1750726435; bh=fnZLjwzqjzTvLaVi2HGZhWrs6eAA3IHFXOYVdMBKLeA=; h=References:In-Reply-To:From:Date:Subject:To:From; b=aS9aY6iwzpDFkI3kKyRc29ohLlYQ8aNJe44W7kyktItHmkow3pzHIm6J98hm4gZ3v y+xLVarWZCRHhLAAqjaiabfxEfWC6Ul6/BixIP3pogXU+15UTpboRtDmVjMka7zJni zEABIUc2hRwahsLAgJlj4FwrnrYTMJ1YGRRVIivf7NX+2GUBstgK53QgVMsl7srjPH OVc8uvRaPQ1iipvls7WnYGy6Y5jvQ8dCzerNydRIU61AcfL7iZqAUBO05Q5FRA2rFJ lRtD9usGRylOAXlSplXCsAVG/N2afO3ZHAEqIHD/GmmlJxzEbm7iUhAtpFPw+2gZ5t doImTqaFx6kFA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 857C2180059 for ; Tue, 24 Jun 2025 00:53:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.4 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 24 Jun 2025 00:53:54 +0000 (UTC) Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-3a57ae5cb17so2652504f8f.0 for ; Mon, 23 Jun 2025 17:55:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750726549; x=1751331349; darn=lists.php.net; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=R/idXJKDSUfEulyiOPlPpoOam5KHidIQLIBdpqEJJu4=; b=WdEWVOzW/MML3KZeOCgw4BLwW/vRuZmV5fAFDHzdJ6VL8bsnmsDXgqkYQ+Fj4OalXI 7ammdlpCF1ES/SLYl6IwxVAvPo70rlfGGPvVuM/CtU6SyYDHt3WQpd1eJgr5/yj+pZG1 fPyxesKWBXvnCQXPVw8sHnaydPyxuVs1TGKi1IG0EhKKvuH688p4badvI+Qvh3L4qdLp R6AQPGeU27lMClKxDy1DNNF2Y3Cn65R+ExcKz5ZNBiR5JdnDU7vuzBWSgeOCHbaiI9fE 7i39lm9vlpC4WMVHmGAReV3wIIj9bZ8r3l0ueYiXTCjv0IoNFNV7ZOyCuwKwuETCkWXL XnDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750726549; x=1751331349; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=R/idXJKDSUfEulyiOPlPpoOam5KHidIQLIBdpqEJJu4=; b=ijCjrFenclMTwWTI7WfPszsyTfukP9pvd44+18Bs3SLtPqFCnKr/zFb0pPlfaNczOc VMIwDegOuXkSleLhBPtKDYwUinjgeIbx57ygYJmM7xJTuU4NrurSB/oGr07kbqcFDPjS gAB2WFOYLdsiFD2sRd83+9Nhx35cChB6lhcgLVNqywdUJoZy5yIht7ytxNVKolIJpu/i vF5XGB+SgBbkn1TNY5LWXYNk4O6S5kFbplagY/wHsgZi7LmL2XDUVQFgFUgOm9zF7YBJ 0TgG8AzApajPiAUACbuvS00mDP7OPiTNYjx5n7HsQ1Wr6iXART5hAFF7OMFPx1o7LMni zLiQ== X-Gm-Message-State: AOJu0YzYO7US9Kcy5pgnixdeitKVD2IWbJxdf24A6+N+FrKLb7aU/ZUl HXGVgEGacSbiYRzfy8Y82U81Tw1xPSvgIn0eaZT0UhtPQpFpHeo0bxgt6bfB/jTDLtJRolR9OsK iISQhh71cbjj3N2H0ojldJLvPRh5lYzI/GVMX1Q== X-Gm-Gg: ASbGncu7EesTAbRN/TV9mzs0mP0twzTauEUen1DwWxr8+x2B6lKiwN5aFP+On4Wku6n JboHTgKb21eIoGHzBk0Wu4wzhKJccTDLSTY22tdVNYKs2sw3EN3W5WyArzGmHNTR7DaBYu7O4ds PXBI5RwG+bmlUHxH3ga3Pd9gS/dCmWZjs32R3tLTlKTg== X-Google-Smtp-Source: AGHT+IHQbnSzLgAF5e39HccCiWq+tW/QQKHX1hlnTxAcwORiK8ukuRtN2DEbhx+3H0uFtugjZf9B9DJ3jpIJxh6L8Xo= X-Received: by 2002:a05:6000:2008:b0:3a4:f902:3872 with SMTP id ffacd0b85a97d-3a6d129da9fmr10311442f8f.19.1750726549024; Mon, 23 Jun 2025 17:55:49 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 References: <69ee9492-f7eb-4287-b222-41682ee41879@app.fastmail.com> In-Reply-To: <69ee9492-f7eb-4287-b222-41682ee41879@app.fastmail.com> Date: Tue, 24 Jun 2025 09:55:37 +0900 X-Gm-Features: Ac12FXze_bQKexSq4wL_WzF66z1KBaB404_xsTn7bIGlSZTb182ssptPMq8aJTM Message-ID: Subject: Re: [PHP-DEV] [RFC] str_icontains To: php internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: youkidearitai@gmail.com (youkidearitai) 2025=E5=B9=B46=E6=9C=8824=E6=97=A5(=E7=81=AB) 9:00 Larry Garfield : > > On Sun, Jun 15, 2025, at 3:12 PM, Adam Cable wrote: > > Hello internals, > > > > I'd like to present my first RFC - str_icontains, a case-insensitive > > friend of str_contains > > > > RFC: https://wiki.php.net/rfc/str_icontains > > PR (including tests): https://github.com/php/php-src/pull/18705 > > > > Previous discussion: https://externals.io/message/127504 > > > > Thanks, > > Adam > > When str_contains() was added, a case-insensitive version was deliberatel= y omitted in favor of "just use strtolower() yourself." Have you gone back= to see the arguments for that to determine if they're still relevant? > > (I don't recall the details; I think one of them was function count explo= sion, but I think there were more.) > > --Larry Garfield Hi I have concerns from multibyte(Unicode) user. As someone who relies on Unicode, I feel that it is not worth using that function. str_contains can matches binary, so this is benefit of many reason, but str_icontains is only support ASCII. This only benefits some regions. Regards Yuya --=20 --------------------------- Yuya Hamada (tekimen) - https://tekitoh-memdhoi.info - https://github.com/youkidearitai -----------------------------