我必须从URL读取XML文件
$map_url = "http://maps.google.com/maps/api/directions/xml?origin=".$merchant_address_url."&destination=".$customer_address_url."&sensor=false";
Run Code Online (Sandbox Code Playgroud)
这给了我一个URL:
我正在使用此函数来读取然后获取数据:
$response_xml_data = file_get_contents($map_url);
if($response_xml_data){
echo "read";
}
$data = simplexml_load_string($response_xml_data);
echo "<pre>"; print_r($data); exit;
Run Code Online (Sandbox Code Playgroud)
但没有运气,任何帮助?
基本上,我希望能够获得C++ find_if(),Smalltalk detect:等的功能:
// would return the element or null
check_in_array($myArray, function($element) { return $elemnt->foo() > 10; });
Run Code Online (Sandbox Code Playgroud)
但我不知道有任何PHP函数可以做到这一点.我提出了一个"近似":
$check = array_filter($myArray, function($element) { ... });
if ($check)
//...
Run Code Online (Sandbox Code Playgroud)
这样做的缺点是代码的目的不是立即清楚的.此外,即使找到该元素,它也不会停止迭代数组,尽管这更像是一个挑剔(如果数据集足够大而导致问题,线性搜索无论如何都不会是答案)
我有一些带有一些整数数组变量的JSON,如下所示:
{"a": [8, 6, 2], "b": [2, 2, 1]}
Run Code Online (Sandbox Code Playgroud)
我想使用boost property_tree,例如:
std::stringstream ss;
boost::property_tree::ptree pt;
ss << "{\"a\": [8, 6, 2], \"b\": [2, 2, 1]}";
boost::property_tree::read_json(ss, pt);
std::vector<int> a = pt.get<std::vector<int> >("a");
Run Code Online (Sandbox Code Playgroud)
这不起作用,我尝试过的int指针也没有任何变化.我如何从属性树中读取数组?
我有一个带有几个参数的成员函数.我想将它绑定到特定的对象实例并将其传递给另一个函数.我可以用占位符来做到这一点:
// actualInstance is a MyClass*
auto callback = bind(&MyClass::myFunction, actualInstance, _1, _2, _3);
Run Code Online (Sandbox Code Playgroud)
但这有点笨拙 - 例如,当参数数量发生变化时,我也必须更改所有绑定调用.但另外,键入所有占位符是相当繁琐的,当我真正想要的是方便地创建包含对象引用的"函数指针"时.
所以我希望能够做的是:
auto callback = objectBind(&MyClass::myFunction, actualInstance);
Run Code Online (Sandbox Code Playgroud)
有谁知道这样做的好方法?
注意:我知道active_在我的例子中可能是"任何东西".这不是这个问题的内容.它是关于使"未定义的值"可靠地通过单元测试失败.
编辑:从"无构造函数"更改为"空构造函数".
我正在研究C++类,我正在使用TDD.现在我想确保bool正确初始化类成员 - 在构造函数中为其分配值.所以我编写了以下测试(使用Google Mock/Google Test框架):
TEST(MyClass, isNotActiveUponCreation) {
MyClass my;
ASSERT_FALSE(my.isActive());
}
Run Code Online (Sandbox Code Playgroud)
以下类定义:
class MyClass {
public:
// Note: Constructor doesn't initialize active_
MyClass() {}
bool isActive() const { return active_; }
private:
bool active_;
};
Run Code Online (Sandbox Code Playgroud)
问题:在我的机器上,此测试目前总是通过,即使active_从未初始化.现在我们知道值active_是未定义的,因为它是原始类型并且从未初始化.因此从理论上讲,它可能true在某个时刻,但最终,我们无法知道.最重要的是,我无法使用这种方法可靠地测试缺少初始化.
有没有人知道如何以确定性和可重复的方式测试这种情况?或者我必须忍受它,省略这种测试并希望我永远不会忘记初始化布尔成员,或者其他测试将始终捕获导致的缺陷?
我有一个AJAX表单,用户可以上传CSV文件.这些文件相当小,服务器端处理将比实际文件上载花费更多时间.然而,上传可能仍需要一两秒钟,具体取决于文件大小和连接速度.此外,用户必须知道服务器端操作是成功还是失败.
现在我想区分"上传文件"和"等待响应",这样我就可以向用户显示相应的消息/指示图标等.
我正在使用jQuery $.ajax,我可以在其中指定complete()-callback.但是,在收到服务器的响应之前,这不会触发.据我所知,没有requestComplete()-callback.
那么,简而言之,有没有办法检测AJAX请求是否已完全发送到服务器,即使服务器没有响应呢?
如果可能的话,我宁愿不在服务器和客户端推送(WebSockets或Comet等)上使用异步处理.(服务器运行PHP).
我正在尝试将文件作为HttpPostedFileBase传递给我的Controller,因此我可以解析文件并将信息传递回页面.例如,我想允许用户导入vCard,并让它自动填充联系人创建表单PartialView.
我想通过传入文件,填充我的模型然后返回页面的PartialView来显示在页面上.我试过像下面的jQuery,但我永远不能让我的HttpPostedFileBase正确传递(总是为null).请记住,我需要在发布后访问文件的InputStream.
var file = "files=" + $("#fileInput").files[0];
$.post("/Contacts/UploadContact/", file, function (returnHtml) {
alert(returnHtml);
$("#contactContainer").html(returnHtml);
});
Run Code Online (Sandbox Code Playgroud)
是否可以通过jQuery将文件作为HttpPostedFileBase发布到我的Controller?
在我的网站上,我有一个注册页面,该页面发出一个AJAX请求,以检查输入后是否有用户名.此文件名为check.php,与registration.php文件位于同一目录中.当数据发布到check.php时,它将在MySQL数据库中执行查询并返回它使用该用户名找到的用户数.
如果有人要将数据发布到check.php文件,他们也会看到结果.我需要以某种方式停止这一点,我已经阅读了几个答案,我需要"验证"每个请求.这可能是一个非常大的话题,虽然我不太清楚要搜索什么来找到它的更多信息.验证每个请求是否是阻止不必要的用户名检查的好方法?如果是这样的话,我真的很感激,如果有人能指出我正确的方向如何做到这一点.
我只是想知道我是否可以通过提供它的地址(在我的情况下随机)来读取内存中的任何值.我知道它不起作用,但我试过:
int e = 10;
int* p = &e;
p = 0x220202;
Run Code Online (Sandbox Code Playgroud)
这甚至都不会编译.那么,有没有办法用C++或任何其他编程语言在计算机的内存中读取内容.
我遇到一个问题,我的结构 typedef 之一mode_t与stdlib
mode_t已经定义在sys/types.h
在这种情况下,最佳实践是什么?将我的结构重命名为其他名称或者是否有其他方法来解决冲突?
c++ ×4
php ×4
ajax ×2
javascript ×2
jquery ×2
asp.net-mvc ×1
boost ×1
c ×1
collections ×1
file-upload ×1
googletest ×1
json ×1
memory ×1
pointers ×1
stdbind ×1
tdd ×1
unit-testing ×1
url ×1
xml ×1