Chinaunix

标题: 请问怎样可以得到一个对象 的属性和方法。(PHP) [打印本页]

作者: infom    时间: 2004-06-06 15:40
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
请问怎样可以得到一个对象 的属性和方法。(PHP)

比如:

$word = new COM("word.application" ;

怎样取得 $word 的所有可用属性与方法呢?

谢谢。
作者: dualface    时间: 2004-06-06 15:59
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
有意思的问题。php4好像是没有自省这个特征吧?
作者: infom    时间: 2004-06-06 16:07
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
那有什么方法可以实现么?或者思路也可以。
作者: longnetpro    时间: 2004-06-06 20:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: 夜猫子    时间: 2004-06-06 23:09
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
刚才在php manul的评论里看到的

Win32 only:
It's probably worth noting here that you can't get the methods of an object created by the built-in 'COM' class. ie - this won't work:
$word = new COM('Word.Application');
$methods = get_class_methods(get_class($word));
print_r($methods);

我也测试了一下,返回一个空的数组
作者: infom    时间: 2004-06-06 23:12
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
好象不可以。或者我的测试文件写错了。麻烦大哥帮看看

  1. <?php
  2. $word = new COM("word.application") or die("Unable to instanciate Word");
  3. if(class_exists (get_class($word))){
  4.      echo "类存在";
  5.      //echo "<br />;==============================<br />;";
  6.      //print_r(get_class_vars($word));
  7.      //echo "<br />;==============================<br />;";
  8.      print_r(get_class_methods($word));
  9.      //echo "<br />;==============================<br />;";
  10. }else {
  11.      echo "类没有定义";
  12.      echo "<br/>;==============================<br />;";
  13.     // print_r(get_object_vars ($word));
  14.          echo "<br/>;已经定义的类有:<br />;";
  15.          
  16.      echo "<br />;==============================<br />;";
  17. }
  18. //释放对象
  19. print_r(get_declared_classes());
  20. @$word->;release();
  21. //$word = NULL;
  22. //*/
  23. ?>;
复制代码



PS:修改了一下,还是不可以。好象没有这个对象。
作者: shukebeita    时间: 2004-06-06 23:43
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
com比较麻烦,没有直接办法,对于php而言那个对象更像一种资源,没有办法从外面得到com对象的方法清单,只能查看API参考。我曾经用过一个com的报表控件,所有的API参考都有控件的开发商提供的。如果你实在想了解word对象的其他方法可以去msdn查一查,一般vb能用的php也可以。


  1. <?php
  2. $word = new COM('Word.Application');
  3. var_dump ($word);
  4. $class = get_class($word);
  5. var_dump($class);

  6. $methods = get_class_methods(get_class($word));
  7. var_dump($methods);
  8. $word->;release();

  9. ?>;
复制代码

作者: infom    时间: 2004-06-06 23:48
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
其实我想要这个的原因很简单。

只是想读 WORD 文件。

还是解决 WORD 转换 HTML 的问题。

前几天看了一个软件。是转化 WORD 到 XML 的。

不过对我们单位不实用。到头来还是我自己转换。
作者: longnetpro    时间: 2004-06-07 04:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: cnw168    时间: 2004-06-07 09:09
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
说的很好!
作者: infom    时间: 2004-06-07 17:59
标题: 请问怎样可以得到一个对象 的属性和方法。(PHP)
恩.谢啦.我开始有这个想法.只是想看看能不能完全用PHP实现.连续10来天.翻遍了PHP手册和部分新闻组.可是都没有满意的答案.暂时还是用浏览器调用WORD吧.这个最简单. ^_^




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2