PHP JavaBridge - 返回的整数在PHP中不被视为整数

时间:2018-06-04 20:36:53

标签: casting jsoup php-java-bridge

我正在使用PHP7和PHP / JavaBridge,我希望从以下代码返回一个整数:

sc=plt.scatter(x1, y1, c=h1, marker='o', s=40, 
               vmin=minval-0.5, vmax=maxval+0.5, 
               cmap=plt.cm.get_cmap('jet', nh)
          )

JSoup从select()返回正确数量的链接(2)。但是,最后一行的PHP错误包括:

  

类java_InternalJava的对象无法转换为int

在$ links-> size()上。

显然,PHP没有将Java整数识别为整数。如果我试图施展它:

cbar=plt.colorbar(sc, cax=cax, ticks=np.arange(minval, maxval+1,1.0))

它返回相同的错误。

如果我转换为字符串然后转换为int:

$jsoup=new java("org.jsoup.Jsoup");
$doc=$jsoup->parse("One link is http://www.stackoverflow.com and another is http://www.google.com");
$links=$doc->select("a");
for($i=0;$i<$links->size()+0;$i++){}

然后它起作用。但是,每次我需要访问Java整数以获得简单的循环时,这似乎有点笨拙。对于我做错了什么或者Java-&gt; PHP整数转换如何更干净地工作有什么建议吗?

0 个答案:

没有答案