我可以以某种方式将数组值声明为字符串,int等而不向其添加值吗?
例如:
public $arr = array(string);
你可以使用它,
就像你认为的那样更容易:
$arr = [];
简短的回答,没有。PHP 是一种弱类型语言,不强加类型。最接近的是类型提示,但在这种情况下,这些提示对您没有帮助。
PHP 不需要(或支持)变量中的显式类型定义 声明;变量的类型由上下文确定,其中 使用该变量。
从 http://php.net/manual/en/language.types.type-juggling.php
是的,你可以
$arr = array();
settype($arr,'string');
PHP 设置类型
如果不定义数组值,则不能将该值声明为字符串、int 等。值null
(这是您可以获得的最接近不定义值的值)的类型为 null
。
这只是
想法,也许不正确,但你可以测试
public function login()
{
$this->index();//not done yet
$arr = array();
foreach ($arr as $element)
{
$element = '';
// or $element = (string)$element;
}
}
也许更好的方法是使用 stdClass 的对象而不是数组;或者 stdClass 对象的数组。