Hello, I'm Joseph, or Seph for short. I'm a long time listener, but a
first-time caller. I've had an idea rattling around in my noggin for a while
that I'd like your feedback on:
As a developer, I would like to have variables of one type cast to another
type automatically so that I do not need to assign the variable to itself.
Instead of the following:
$price = '5.0123';
...
$price = (float) $price;
var_dump($price); // Result: `float: 5.0123`
What if we could do this instead?
$price = '5.0123';
...
(float) $price;
var_dump($price); // Result: `float: 5.0123`
If everyone thinks this a good idea, I would be willing to put together an
RFC and work on the implementation myself, with guidance from an experienced
core developer. I have no experience with C/C++, other than a brief foray
more than twenty years ago, but I am willing to learn.
Thank you for your consideration! Also, a huge thank you to everyone who
has made PHP what it is today!
(Note: No AI was used in the writing of this message.)
Hello, I'm Joseph, or Seph for short. I'm a long time listener, but a
first-time caller. I've had an idea rattling around in my noggin for a while
that I'd like your feedback on:As a developer, I would like to have variables of one type cast to another
type automatically so that I do not need to assign the variable to itself.Instead of the following:
$price = '5.0123'; ... $price = (float) $price; var_dump($price); // Result: `float: 5.0123`
What if we could do this instead?
$price = '5.0123'; ... (float) $price; var_dump($price); // Result: `float: 5.0123`
If everyone thinks this a good idea, I would be willing to put together an
RFC and work on the implementation myself, with guidance from an experienced
core developer. I have no experience with C/C++, other than a brief foray
more than twenty years ago, but I am willing to learn.Thank you for your consideration! Also, a huge thank you to everyone who
has made PHP what it is today!(Note: No AI was used in the writing of this message.)
Hey Seph,
This is basically how non-strict mode works; there's no need for a cast. (I very rarely use strict mode, so I was a little confused on why you'd ever want to do this)
— Rob
Hello, I'm Joseph, or Seph for short. I'm a long time listener, but a
first-time caller. I've had an idea rattling around in my noggin for a while
that I'd like your feedback on:As a developer, I would like to have variables of one type cast to another
type automatically so that I do not need to assign the variable to itself.Instead of the following:
$price = '5.0123'; ... $price = (float) $price; var_dump($price); // Result: `float: 5.0123`
What if we could do this instead?
$price = '5.0123'; ... (float) $price; var_dump($price); // Result: `float: 5.0123`
If everyone thinks this a good idea, I would be willing to put together an
RFC and work on the implementation myself, with guidance from an experienced
core developer. I have no experience with C/C++, other than a brief foray
more than twenty years ago, but I am willing to learn.Thank you for your consideration! Also, a huge thank you to everyone who
has made PHP what it is today!(Note: No AI was used in the writing of this message.)
Hey Seph,
This is basically how non-strict mode works; there's no need for a cast. (I very rarely use strict mode, so I was a little confused on why you'd ever want to do this)
— Rob
Aaaand, I just discovered ctrl-enter sends the email.
But to continue on with what I was saying, casting is relatively dangerous (which is why I stay away from strict mode).
vs.
— Rob
On Mon, Jul 7, 2025 at 7:25 PM Joseph Leedy joseph+php@josephleedy.dev
wrote:
As a developer, I would like to have variables of one type cast to another
type automatically so that I do not need to assign the variable to itself.What if we could do this instead?
$price = '5.0123'; ... (float) $price; var_dump($price); // Result: `float: 5.0123`
This is valid code now, and does not perform the cast.
You need to use a slightly different syntax, maybe (float)&$price;
that
is an error now.
--
Alex
You need to use a slightly different syntax, maybe
(float)&$price;
that is an error now.
Apologies; I missed the ampersand in my example solution.
This is basically how non-strict mode works; there's no need for a cast. (I very rarely
use strict mode, so I was a little confused on why you'd ever want to do this)
I always code in strict mode, so I find myself having to cast variables quite often.
Le 7 juil. 2025 à 18:22, Joseph Leedy joseph+php@josephleedy.dev a écrit :
Hello, I'm Joseph, or Seph for short. I'm a long time listener, but a
first-time caller. I've had an idea rattling around in my noggin for a while
that I'd like your feedback on:As a developer, I would like to have variables of one type cast to another
type automatically so that I do not need to assign the variable to itself.Instead of the following:
$price = '5.0123'; ... $price = (float) $price; var_dump($price); // Result: `float: 5.0123`
What if we could do this instead?
$price = '5.0123'; ... (float) $price; var_dump($price); // Result: `float: 5.0123`
If everyone thinks this a good idea, I would be willing to put together an
RFC and work on the implementation myself, with guidance from an experienced
core developer. I have no experience with C/C++, other than a brief foray
more than twenty years ago, but I am willing to learn.Thank you for your consideration! Also, a huge thank you to everyone who
has made PHP what it is today!(Note: No AI was used in the writing of this message.)
Hi,
There is already a built-in function for that very purpose, namely settype()
, see:
—Claude
On Mon, Jul 7, 2025, at 11:54, Claude Pache wrote:
Hi,
There is already a built-in function for that very purpose, namely
settype()
, see:—Claude
Thanks, Claude. Over twenty years of PHP development and I didn't know that function exists (or I forgot about it). TIL! Still, this function seems clunkier than a straight cast would be.