我正在尝试使用PECL在我的新Mac(El Capitan 10.11.4)上安装PHP Intl扩展,但是在make阶段期间存在链接错误.
以下是我采取的步骤:
已安装PEAR以在Mac上运行
编译并安装ICU库(版本51.2) /usr/local/lib
执行此命令:sudo pecl install intl出现错误(见下文).我也尝试直接从PHP源代码("ext"文件夹)编译扩展,并收到相同的错误消息.
我收到以下错误:
ld: file not found: libicudata.51.dylib for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [intl.la] Error 1
ERROR: 'make' failed
Run Code Online (Sandbox Code Playgroud)
看起来像:
文件丢失(即使它知道要查找的正确ICU库版本).也许它真的找不到文件.该-L开关和相应的开关似乎指向正确的路径/usr/local/lib路径.
然后,还存在某种架构不匹配.所以,我跑了file libicudata.51.dylib,它似乎是正确的架构.
这是file重新调整的:
$ file /usr/local/lib/libicudata.51.dylib
/usr/local/lib/libicudata.51.dylib: Mach-O 64-bit dynamically linked shared library x86_64
Run Code Online (Sandbox Code Playgroud)
以前有人碰过这个吗?或者知道如何在新的Mac Book Pro(El Capitan 10.11.4)上编译PHP的Intl扩展?我希望能有一些关于下一步要看的提示,因为我在这里有点难过.
我正在整理目录(目录本质上只是元数据),因此我使用RDF存储和SPARQL处理器来编译数据,而不是使用数据库.我处于模式匹配阶段(有趣的部分).因此,我想出了很多在SPARQL中很容易定义的模式,然后将这些信息提供给使用目录的人.
好的,这是我的问题:
我曾经使用过RDF开展了一些项目,似乎入门是最困难的部分(至少对我而言),特别是如果我必须从头开始.所以,我已经开始为自己整理一个非常基本的入门套件了,但是我想知道是否还有其他什么可能更好...类似于许多脚本语言提供的交互式命令行,或者像phpMyAdmin (但对于三倍).
我见过:
一些Web前端,附加到端点,如OpenLink(一个例子是http://dbpedia.org/sparql),但我看到的那些仍然需要大量的手工工作(因为它们是针对普通观众的).
有Tabulator(http://dig.csail.mit.edu/2007/tab/)等工具,但他们更关注的是组合和可视化数据集,而不是创建新的数据集.
在描述RDF中的现有数据方面还有很多工作要做.
一些付费在线服务的工具(我更愿意自己安装)
有没有人知道一个系统来帮助开始创建一个初始RDF存储,并设置用户首选项等,以开始使用RDF的新项目.
这是一个跨域问题,但问题是浏览器(Chrome)似乎没有遵循重定向.相反,没有任何东西返回到jQuery ajax调用,我收到一个错误.
我正在尝试使用jQuery.ajax,但我正在使用的网址重定向到另一个域.发生这种情况时,我收到一个错误.是否有任何特殊需要完成,以便浏览器遵循重定向?
我已经添加access-control-allow-origin: *到重定向到的第二个域的标头中.
好吧,看起来我的初始问题出错了.所以,这里有一些更正.答案仍然适用,因为当协议更改为HTTPS(SSL)时,第二个重定向将停止.
在我的情况下,我有多次重定向,浏览器不遵循第二次重定向.遵循第一个重定向但返回错误.
我一直在阅读包含重定向的JavaScript AJAX响应会自动跟踪,但看起来不像我的情况.浏览器会自动跟随第一个重定向,并返回第一个重定向,而不会跟随标题中的第二个重定向.我的问题是我希望浏览器自动遵循所有重定向.
重定向是phpCAS库的一部分.我有一个用PHP编写的API,每次都会在返回结果之前检查用户身份验证.
这是序列.需要注意的主要事情是浏览器在执行1次重定向后返回第二个响应.我更喜欢它一路走来,并在我进行AJAX调用时返回最后一个响应localhost/example/api.
本地主机/示例
localhost/example/api使用jQuery.ajax()调用响应1:localhost/example/api
https://localhost/accounts/cas/login?service=api.example.com&gateway=true(使用SSL).响应2:(SSL)localhost/accounts/cas/login?service = api.example.com&gateway = true
响应3:localhost/api?ticket = TICKET
响应4:localhost/api
没有特别的原因我使用CAS而不是OpenID或OpenAuth(orization).CAS只是我能够在WordPress中工作的第一个身份验证模块.我对使用不同的身份验证库,CMS,框架等方面的建议持开放态度.虽然,我希望能够完成这个项目.因此,重新加工越少越好.
我将libRets用于.NET,并使用有效的用户帐户查询http://retsgw.flexmls.com/rets2_1/。从C#中,调用Search()之后,我使用GetCount()检查计数,得到6300个结果,但是当我调用HasNext()时,第一次返回false。
检查XML响应,即使结果计数提供了一个数字,结果也似乎为空()。
那么...结果去了哪里?
确切的查询如下:
这是请求:
SearchRequest request = client.CreateSearchRequest("OpenHouse", "OpenHouse", "");
request.SetStandardNames(true);
request.SetSelect("ListingID");
Run Code Online (Sandbox Code Playgroud)
发出请求的方式如下:
SearchResultSet result = client.Search(request);
Run Code Online (Sandbox Code Playgroud)
这是处理结果的方式:
while (result.HasNext()) {
// Do something
}
Run Code Online (Sandbox Code Playgroud) 我使用PHP(WAMPServer)接收表单提交,然后使用CURL将文件传递到另一台服务器进行处理.
这是一个示例(不是实际代码):
$data = array(
'file' => '@'.$_FILES['key']['tmp_name']
);
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的CURL ...当我粘贴代码时,我注意到http_build_query()我的代码仍然存在......所以,这一定是问题所在.
$CURL = curl_init();
curl_setopt($CURL, CURLOPT_URL, $operation['callback']);
$query_string = http_build_query($arguments);
curl_setopt($CURL, CURLOPT_POSTFIELDS, $query_string);
curl_setopt($CURL, CURLOPT_POST, TRUE);
curl_setopt($CURL, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($CURL);
curl_close($CURL);
return $result;
Run Code Online (Sandbox Code Playgroud)
我的问题是最后一台服务器没有收到文件.相反,数据作为键值对传递.
$_POST contains 'file' => '@c:\wamp\tmp\xyz.tmp'
Run Code Online (Sandbox Code Playgroud)
我更喜欢的是文件被传输,$ _FILES有关于它的信息.