草庐IT

Reflection

全部标签

linux - 如何在 Linux 上捆绑 Mono/GTK# 应用程序?

这是我遇到的问题:我使用MonoDevelop编写了一个Gtk#程序并且运行良好。但现在我希望能够在其他Linux机器上运行它而无需安装MonoDevelop。我的解决方案有两个项目:主Gtk#应用程序和它所依赖的C#库项目。因此,当我构建主项目时,它会生成MainProject.exe和MainProject.exe.mdb,以及bin/Release文件夹中的DependencyProject.dll。我尝试运行以下命令将其全部打包到一个可执行文件中(从bin/Release文件夹运行):mkbundleMainProject.exe-omainproject--deps*.dll

linux - 如何在 Linux 上捆绑 Mono/GTK# 应用程序?

这是我遇到的问题:我使用MonoDevelop编写了一个Gtk#程序并且运行良好。但现在我希望能够在其他Linux机器上运行它而无需安装MonoDevelop。我的解决方案有两个项目:主Gtk#应用程序和它所依赖的C#库项目。因此,当我构建主项目时,它会生成MainProject.exe和MainProject.exe.mdb,以及bin/Release文件夹中的DependencyProject.dll。我尝试运行以下命令将其全部打包到一个可执行文件中(从bin/Release文件夹运行):mkbundleMainProject.exe-omainproject--deps*.dll

php - 如何获取运行时确定的可调用参数的数量?

注意:通过写这个问题,我已经发现我对使用新的语言功能过于热心了。更简洁的解决方案是改用策略模式……不过,我还是很好奇是否有解决此问题的正确方法。TL;DR:您能否反射(reflection)PHP中的泛型Callable,而无需手动对所有类型的Callable进行类型检查?在PHP5.4中,我们有一个新的类型提示:可调用。这看起来很有趣。我想我会通过以下方式利用它:到目前为止,我的想法是对可调用对象进行一系列类型检查,并从中推断出要使用哪个Reflection*类:getMethod('__invoke');}//ArrayofReflectionParameters.Yay!$par

php - 如何获取运行时确定的可调用参数的数量?

注意:通过写这个问题,我已经发现我对使用新的语言功能过于热心了。更简洁的解决方案是改用策略模式……不过,我还是很好奇是否有解决此问题的正确方法。TL;DR:您能否反射(reflection)PHP中的泛型Callable,而无需手动对所有类型的Callable进行类型检查?在PHP5.4中,我们有一个新的类型提示:可调用。这看起来很有趣。我想我会通过以下方式利用它:到目前为止,我的想法是对可调用对象进行一系列类型检查,并从中推断出要使用哪个Reflection*类:getMethod('__invoke');}//ArrayofReflectionParameters.Yay!$par

php - 我可以通过反射获得私有(private)属性(property)的值(value)吗?

好像不行:$ref=newReflectionObject($obj);if($ref->hasProperty('privateProperty')){print_r($ref->getProperty('privateProperty'));}它进入IF循环,然后抛出一个错误:PropertyprivatePropertydoesnotexist:|$ref=newReflectionProperty($obj,'privateProperty')也不起作用...documentationpage列出了一些常量,包括IS_PRIVATE。如果我无法访问私有(private)属性(p

php - 我可以通过反射获得私有(private)属性(property)的值(value)吗?

好像不行:$ref=newReflectionObject($obj);if($ref->hasProperty('privateProperty')){print_r($ref->getProperty('privateProperty'));}它进入IF循环,然后抛出一个错误:PropertyprivatePropertydoesnotexist:|$ref=newReflectionProperty($obj,'privateProperty')也不起作用...documentationpage列出了一些常量,包括IS_PRIVATE。如果我无法访问私有(private)属性(p

PHP 5.4 : Getting Fully-qualified class name of an instance variable

我知道PHP5.5上有一个静态class字段,但我必须坚持使用PHP5.4。是否可以从变量中获取完全限定的类名?例子:namespaceMy\Awesome\NamespaceclassFoo{}代码中的其他地方:publicfunctionbar(){$var=new\My\Awesome\Namespace\Foo();//maybethere'ssomethinglikethis??$fullClassName=get_qualified_classname($var);//outputs'My\Awesome\Namespace\Foo'echo$fullClassName}

PHP 5.4 : Getting Fully-qualified class name of an instance variable

我知道PHP5.5上有一个静态class字段,但我必须坚持使用PHP5.4。是否可以从变量中获取完全限定的类名?例子:namespaceMy\Awesome\NamespaceclassFoo{}代码中的其他地方:publicfunctionbar(){$var=new\My\Awesome\Namespace\Foo();//maybethere'ssomethinglikethis??$fullClassName=get_qualified_classname($var);//outputs'My\Awesome\Namespace\Foo'echo$fullClassName}

php - 从文件中获取类名

我有一个只包含一个类的php文件。我如何通过知道文件名知道那里有什么类?我知道我可以用正则表达式匹配做一些事情,但是有标准的php方式吗?(该文件已包含在试图找出类名的页面中)。 最佳答案 这个问题有多种可能的解决方案,每种方案各有优缺点。它们就在这里,由您决定您想要哪一个。分词器此方法使用分词器并读取部分文件,直到找到类定义。优势不必完全解析文件快速(仅读取文件开头)几乎没有误报的可能性缺点最长的解决方案代码$fp=fopen($file,'r');$class=$buffer='';$i=0;while(!$class){if(

php - 从文件中获取类名

我有一个只包含一个类的php文件。我如何通过知道文件名知道那里有什么类?我知道我可以用正则表达式匹配做一些事情,但是有标准的php方式吗?(该文件已包含在试图找出类名的页面中)。 最佳答案 这个问题有多种可能的解决方案,每种方案各有优缺点。它们就在这里,由您决定您想要哪一个。分词器此方法使用分词器并读取部分文件,直到找到类定义。优势不必完全解析文件快速(仅读取文件开头)几乎没有误报的可能性缺点最长的解决方案代码$fp=fopen($file,'r');$class=$buffer='';$i=0;while(!$class){if(