该文件test.ml只包含一行:
let foo = <:expr< foo >>
Run Code Online (Sandbox Code Playgroud)
然后我使用此命令行将camlp4应用于该文件:
camlp4o pa_extend.cmo test.ml
Run Code Online (Sandbox Code Playgroud)
输出是:
File "test.ml", line 1, characters 12-24:
While finding quotation "expr" in a position of "expr":
There is no quotation expander available.
Camlp4: Uncaught exception: Not_found
Run Code Online (Sandbox Code Playgroud)
我希望文件得到预处理,报价要适当扩展.我在这忘记了什么?
这个最近的问题让我考虑优化类别过滤器.
假设我们希望创建一个引用大量音轨的数据库,其发布日期和可从中下载音轨的世界位置列表.
我们希望优化的请求是:
如何构建该数据库呢?我很难想出一个简单的解决方案,不需要读取至少一个位置的所有轨道......
我正在使用CouchDB创建一个页面系统,显示:
从这篇文章的主题,我明白使用skip是次优的,我应该使用startkey属性来指定第一个文档,从那里读取11个文档,显示前10个并使用第11 个键来显示链接到下一页.困扰我的是上一页的链接.文章说:
将链接填充到上一页就像将当前的启动键带到下一页一样简单.如果没有先前的启动键,我们就在第一页.
此作品进入下一个页面时:当我从4页移到第5页我记得在上一个页面4,但是,当我从移动第5页回到第4页,我也没办法带过的startkey页面这怎么办?
是否可以(和推荐)endkey一起使用skip=10并limit=1找到上一页的第一个元素,以便我可以创建一个回链接?
在我的脚本中,我有以下几行:
$test = @imagecreatefrompng($name);
if ($test) { ... }
Run Code Online (Sandbox Code Playgroud)
我确信它$name代表磁盘上的现有文件,但我必须处理该文件不是有效PNG文件的情况(由于传输错误或恶意用户).我希望通过不做任何事情来处理这些案件.
但是,鉴于上面的代码,我的PHP解释器在第一行停止,并显示以下错误消息:
imagecreatefrompng()[function.imagecreatefrompng]:'foobar.png'不是有效的PNG文件
不应该@已经抑制了此错误消息,并且false如文档中所述返回了函数吗?我怎么能告诉PHP我知道可能发生错误而不中断执行?
我在我的网站上使用Paypal Express Checkout API,并在沙盒网站上遇到错误.USER,PWD和SIGNATURE字段已经过验证且正确无误.为了便于阅读,我用换行符替换了&符号.
首先,我的SetExpressCheckout请求:
USER=xxx
PWD=xxx
SIGNATURE=xxx
VERSION=76.0
METHOD=SetExpressCheckout
RETURNURL=xxx
CANCELURL=xxx
REQCONFIRMSHIPPING=0
NOSHIPPING=1
LOCALECODE=FR
SOLUTIONTYPE=Sole
LANDINGPAGE=Billing
PAYMENTREQUEST_0_AMT=86.11
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_ITEMAMT=72.00
PAYMENTREQUEST_0_TAXAMT=14.11
PAYMENTREQUEST_0_INVNUM=1tyZq03X5c8
PAYMENTREQUEST_0_PAYMENTACTION=Sale
PAYMENTREQUEST_0_PAYMENTREQUESTID=1tyZx03f5c8
Run Code Online (Sandbox Code Playgroud)
Paypal的回复如下:
TOKEN=EC%2d9FE8384171515313J
TIMESTAMP=2011%2d08%2d24T08%3a44%3a36Z
CORRELATIONID=696e70dbd6086
ACK=Success
VERSION=76%2e0
BUILD=2055089
Run Code Online (Sandbox Code Playgroud)
用户填写Paypal网站上的付款并返回上面指定的确认URL后,我运行GetExpressCheckoutDetails:
USER=xxx
PWD=xxx
SIGNATURE=xxx
VERSION=76.0
METHOD=GetExpressCheckoutDetails
TOKEN=EC-9FE8384171515313J
Run Code Online (Sandbox Code Playgroud)
回应是:
TIMESTAMP=2011%2d08%2d24T08%3a45%3a56Z
CORRELATIONID=6a2bbe8363462
ACK=Failure
VERSION=76%2e0
BUILD=2055089
L_ERRORCODE0=10410
L_SHORTMESSAGE0=Invalid%20token
L_LONGMESSAGE0=Invalid%20token%2e
L_SEVERITYCODE0=Error
Run Code Online (Sandbox Code Playgroud)
提供令牌的代码在一个月内没有更改(并且它在几分钟前正常工作).从日志来看,我的请求结构没有变化,所以我假设这必须是PayPal方面的配置问题.
一个可能很重要的细节:我在系统开始出现故障之前重置沙箱中的卖家帐户,但我确保API凭据是正确的(当我重置卖家帐户时它们没有改变).
任何想法为什么我突然得到这个错误?