当前位置: 首页 > 面试题库 >

通过字符串获取PHP类属性

江宏伟
2023-03-14
问题内容

如何在基于字符串的PHP中获取属性?我给它打电话magic。那是什么magic

$obj->Name = 'something';
$get = $obj->Name;

就像…

magic($obj, 'Name', 'something');
$get = magic($obj, 'Name');

问题答案:

像这样

<?php

$prop = 'Name';

echo $obj->$prop;

或者,如果您可以控制该类,请实现ArrayAccess接口,然后执行此操作

echo $obj['Name'];


 类似资料:
  • 我知道如何计算出字符串中某个字符或数字的索引,但是有没有任何预定义的方法可以用来给我第n个位置的字符?所以在字符串“foo”中,如果我要求索引为0的字符,它会返回“f”。 注意——在上面的问题中,我所说的“字符”不是指字符数据类型,而是字符串中的字母或数字。这里重要的一点是,调用该方法时,我不会收到char,而是一个字符串(长度为1)。我知道substring()方法,但我想知道是否有更简洁的方法

  • 问题内容: 我知道如何计算字符串中某个字符或数字的索引,但是我可以使用任何预定义的方法在第n个位置给我该字符吗?因此,在字符串“ foo”中,如果我要求索引为0的字符,它将返回“ f”。 注意-在上述问题中,“字符”不是字符数据类型,而是字符串中的字母或数字。这里重要的是,调用该方法时,我不会收到字符,而是一个字符串(长度为1)。而且我知道substring()方法,但是我想知道是否有更整洁的方法

  • 我有一个方法,它返回字符串类型的字段对象列表。 这个方法应该将所有字符串字段都大写: 问题是:"field.set(...)"不起作用。它应该将值大写并将其设置为该字段的新值,但它不起作用...我如何解决这个问题的任何想法?(PS:在真正的代码中,"something Class.class"被设置为真正的类名...) 正在生成的错误是field.get(this)方法(insdefield.se

  • 问题内容: 我有一个名字叫类的名字(没有扩展名)。我想将其分配给变量,如下所示: 我怎样才能做到这一点? 问题答案: 但是您应该是完全合格的-即

  • 我有一个用“|”分隔的图像URL字符串,我希望使用一个php函数来读取该字符串,将图像分开,并用“,”分隔,以使用wordpress gallery组件 http://xxxxxxxx/xxxxxxx/wp-content/uploads/2018/02/large-IMG_5367.jpg|http://xxxxxxxx/xxxxxxx/wp-content/uploads/2018/02/la

  • 我找不到如何用Kotlin语言将变量(或常量)的类型作为,像。如何完成这一点?