Using settype in PHP instead of typecasting using brackets, What is the difference?(在 PHP 中使用 settype 而不是使用括号进行类型转换,有什么区别?)
问题描述
在 PHP 中,您可以将某些东西类型转换为这样的对象;(object) 或者您可以使用 settype($var, "object") - 但我的问题是两者之间有什么区别?
In PHP you can typecast something as an object like this; (object) or you can use settype($var, "object") - but my question is what is the difference between the two?
哪一个更有效/更好用?目前我发现 using (object) 可以完成这项工作,但想知道为什么还有一个 settype 函数.
Which one is more efficient / better to use? At the moment I find using (object) does the job, but wondering why there is a settype function as well.
推荐答案
强制转换改变了变量在当前上下文中被视为什么,settype 永久改变它.
Casting changes what the variable is being treated as in the current context, settype changes it permanently.
$value = "100"; //Value is a string
echo 5 + (int)$value; //Value is treated like an integer for this line
settype($value,'int'); //Value is now an integer
基本上 settype 是一个快捷方式:
Basically settype is a shortcut for:
$value = (type)$value;
这篇关于在 PHP 中使用 settype 而不是使用括号进行类型转换,有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 PHP 中使用 settype 而不是使用括号进行类型转换,有什么区别?
基础教程推荐
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 如何替换eregi() 2022-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
