Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:47800 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 11289 invoked from network); 6 Apr 2010 10:29:40 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 6 Apr 2010 10:29:40 -0000 Authentication-Results: pb1.pair.com smtp.mail=indeyets@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=indeyets@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.78.25 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: indeyets@gmail.com X-Host-Fingerprint: 74.125.78.25 ey-out-2122.google.com Received: from [74.125.78.25] ([74.125.78.25:65491] helo=ey-out-2122.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 1D/4A-49863-21D0BBB4 for ; Tue, 06 Apr 2010 06:29:39 -0400 Received: by ey-out-2122.google.com with SMTP id d26so323568eyd.39 for ; Tue, 06 Apr 2010 03:29:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:subject:mime-version :content-type:from:in-reply-to:date:cc:message-id:references:to :x-mailer; bh=zC3fjWurmWbBVJC0sbStgB/lpzl5w+Jwv6fW11pJUiQ=; b=EXy1VKVFE5LfGX9G1MgrONyLc4s0im7M0VN6Ehl1sReC3gCEcxaU63+x0QYefIgJtN cfeEsieDAxkD10ZWLwLCRQJu7acwDim02GgAPMOFoYk/iLmMTyKjHrZYENP7hOcssIK+ CXjUIVG4vRHKL7sL1EYKXNQH+C9a7VR2Aey5c= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=subject:mime-version:content-type:from:in-reply-to:date:cc :message-id:references:to:x-mailer; b=cdN8LcDcnY3Hque7LprmnOWanBz1snsu6dFQlCUYOUfd0PFoSBRVo/kRDLWdU2urIK dkihiLu8YZcIcWC9KGejc/UFYDEQLeRBaDmBUzKXeh3xLWRKiQ6suRvAKk0B9ly57aZB HyWjELLWPs1oAdmrJEnzPg08v7HUBAMZe7PeI= Received: by 10.213.40.80 with SMTP id j16mr536958ebe.18.1270549776192; Tue, 06 Apr 2010 03:29:36 -0700 (PDT) Received: from nirvana.lan ([93.185.190.227]) by mx.google.com with ESMTPS id 16sm7049307ewy.11.2010.04.06.03.29.32 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 06 Apr 2010 03:29:34 -0700 (PDT) Mime-Version: 1.0 (Apple Message framework v1078) Content-Type: multipart/signed; boundary=Apple-Mail-1-184794563; protocol="application/pkcs7-signature"; micalg=sha1 In-Reply-To: Date: Tue, 6 Apr 2010 14:29:30 +0400 Cc: PHP internals Message-ID: <0268D43F-DE7C-432E-86E5-8C60F1B67E29@gmail.com> References: To: RQuadling@googlemail.com X-Mailer: Apple Mail (2.1078) Subject: Re: [PHP-DEV] Supplying nothing at all for default parameters From: indeyets@gmail.com (Alexey Zakhlestin) --Apple-Mail-1-184794563 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 06.04.2010, at 14:16, Richard Quadling wrote: > Hello. >=20 > A suggestion I would like to make is to allow for nothing to be > supplied for defaulted parameters. >=20 > I suppose the easiest way of describing this issue is with the > following code ... >=20 > function foo($bar, $baz =3D 9, $buzz =3D 10) { > return "$bar $baz $buzz"; > } >=20 > // Whatever is supplied for $baz will be used for $baz. > // User has to know the default value of $baz rather than just > allowing the default value. > echo foo(1, 9, 20); >=20 > I don't know the stylics on using default parameters, but for the user > to have to know the default value would sort of make the default > redundant. >=20 >=20 > // Passing nothing at all could be one option. > echo foo(1, , 20); >=20 > but who would want to see ... >=20 > echo anotherfoo(1, , , , , , , 20); >=20 > for example. >=20 >=20 > Maybe a new keyword ... (ala SQL syntax). >=20 > echo foo(1, default, 20); another solutions is to use named parameters as suggested in one of the = recent discussions. named parameters allow you to specify only those parameters which you = need and not care about order of parameters= --Apple-Mail-1-184794563 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIGNDCCBjAw ggUYoAMCAQICEQDu6XyzR/w4238CzgFktgTJMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYDVQQGEwJV UzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNF UlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UE AxMtVVROLVVTRVJGaXJzdC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWlsMB4XDTEwMDQw NTAwMDAwMFoXDTExMDQwNTIzNTk1OVowgd8xNTAzBgNVBAsTLENvbW9kbyBUcnVzdCBOZXR3b3Jr IC0gUEVSU09OQSBOT1QgVkFMSURBVEVEMUYwRAYDVQQLEz1UZXJtcyBhbmQgQ29uZGl0aW9ucyBv ZiB1c2U6IGh0dHA6Ly93d3cuY29tb2RvLm5ldC9yZXBvc2l0b3J5MR8wHQYDVQQLExYoYykyMDAz IENvbW9kbyBMaW1pdGVkMRowGAYDVQQDExFBbGV4ZXkgWmFraGxlc3RpbjEhMB8GCSqGSIb3DQEJ ARYSaW5kZXlldHNAZ21haWwuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAppkx 8l6uUqbG5LWmLGoBHBPS2/T0K+UVhUPutyWXC6K6FSrHC1xqDX3Kmhnl3Hhie0U3ZBZtnuOlF5Td 4Rx1HG8LZb+bzF+/MEJp0L9M8zYc9dMiFwD3bCuu7cUDHub3x8pr4g0SgEKF2eKHcs8ZQ0rY+U2U S1QvdYMq3lgsHZu+H/czXYiXWq3i0Sgci7rochDoeYq2AvOl4obcExILSWDEChyCLmmlBfUJOUzz KG3z1PLO7Aa+OkoWkbhxFGScZRrdaXcY3ZX+SUgTx96g/PYnKMoPHFeyb1oIwnpmGoiinQue8IHv 6ver4AvbTbrnG8GUkh15mx0GhMSsxggHIQIDAQABo4ICFDCCAhAwHwYDVR0jBBgwFoAUiYJnfcSd JnAAS7RQSHzePa4Ebn0wHQYDVR0OBBYEFAwMZPncpfFUxOB8Y2VRVbdxW/+CMA4GA1UdDwEB/wQE AwIFoDAMBgNVHRMBAf8EAjAAMCAGA1UdJQQZMBcGCCsGAQUFBwMEBgsrBgEEAbIxAQMFAjARBglg hkgBhvhCAQEEBAMCBSAwRgYDVR0gBD8wPTA7BgwrBgEEAbIxAQIBAQEwKzApBggrBgEFBQcCARYd aHR0cHM6Ly9zZWN1cmUuY29tb2RvLm5ldC9DUFMwgaUGA1UdHwSBnTCBmjBMoEqgSIZGaHR0cDov L2NybC5jb21vZG9jYS5jb20vVVROLVVTRVJGaXJzdC1DbGllbnRBdXRoZW50aWNhdGlvbmFuZEVt YWlsLmNybDBKoEigRoZEaHR0cDovL2NybC5jb21vZG8ubmV0L1VUTi1VU0VSRmlyc3QtQ2xpZW50 QXV0aGVudGljYXRpb25hbmRFbWFpbC5jcmwwbAYIKwYBBQUHAQEEYDBeMDYGCCsGAQUFBzAChipo dHRwOi8vY3J0LmNvbW9kb2NhLmNvbS9VVE5BQUFDbGllbnRDQS5jcnQwJAYIKwYBBQUHMAGGGGh0 dHA6Ly9vY3NwLmNvbW9kb2NhLmNvbTAdBgNVHREEFjAUgRJpbmRleWV0c0BnbWFpbC5jb20wDQYJ KoZIhvcNAQEFBQADggEBAH8Ctl3CTcdokGaSsM4G9Q2sUkiG3h4vXK4Nv9JFqfna9tk381uFKyms D779n4NVLkDBC+Tqi1r7yqRtXhr37B1RvNhvPL3gnb91dz6ts5il3w6o1RAnNN9lYD2Gk6Cf5QqC vSnAMWJsCC0cAPZg/IOcTnS41lsErQqFeZ501U01jqT1a1CBKfm13I4IXXoK1wzGAhE6OTc7Fu4u 05UsTPj76P/uaZgKcJqUx1O5olDTWa1y+AyzjytEyxFFD2tNjyIEFiJ55WDJPxAbLWFXJ7GmfojU Ng914ot1bmKZhDg6u/bYzI/qP5l7eUuMoBvgdXbbkd//d2MkSZ8q4vAp38cxggP/MIID+wIBATCB xDCBrjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEe MBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0 cnVzdC5jb20xNjA0BgNVBAMTLVVUTi1VU0VSRmlyc3QtQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFu ZCBFbWFpbAIRAO7pfLNH/DjbfwLOAWS2BMkwCQYFKw4DAhoFAKCCAg8wGAYJKoZIhvcNAQkDMQsG CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTAwNDA2MTAyOTMwWjAjBgkqhkiG9w0BCQQxFgQU MoFc9oykW+/IdicV9NKH32OF/I0wgdUGCSsGAQQBgjcQBDGBxzCBxDCBrjELMAkGA1UEBhMCVVMx CzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJU UlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0BgNVBAMT LVVUTi1VU0VSRmlyc3QtQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbAIRAO7pfLNH/Djb fwLOAWS2BMkwgdcGCyqGSIb3DQEJEAILMYHHoIHEMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMC VVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdv cmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UEAxMtVVROLVVTRVJG aXJzdC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWlsAhEA7ul8s0f8ONt/As4BZLYEyTAN BgkqhkiG9w0BAQEFAASCAQBsx9QH31W1Od3kHWFnhQj6ZFAeFNLC6ttJHuFLGUs7brZbSfa3xAXB ugO63uKAZoke9l4zfnHmDw3MLf0ffe4/5KtVJobyJYlrAsyajzEZtPbdgaYo3cf7xQxMMlxEeHqn tGOBHBrigsT1xgrtBfXX3fhd/VrRhSpPW50Yi6/kc3+kTH7eOxWW9b6ENAdwjYY4x4+C+RuWPAaK 16I83FtARuiYUWuLxjbZM5noVXZGnc64DMY2/O/wiFl2oX5G2YDbx9+Dd1A2CUAQ+akVYdFsNm0k of91d4BNLYqUqEYIUQDtr1DauoJOAaCL9SnskDuDFyXKc/xWa01lMvcxniqpAAAAAAAA --Apple-Mail-1-184794563--