我想在 php 脚本中使用curl 并在命令行模式下运行它。
这是脚本
<?php
//enable_dl("php_curl.dll");
$ch = curl_init();
$options=array(
CURLOPT_URL=>"http://test.com/wp-content/themes/bluefocus/images/desc_img.jpg",
CURLOPT_BINARYTRANSFER=>true,
CURLOPT_VERBOSE=>true
);
curl_setopt_array($ch,$options);
$data = curl_exec($ch);
$fp=fopen("test.jpg","w");
fwrite($fp,$data);
curl_close($ch);
?>
Run Code Online (Sandbox Code Playgroud)
我用命令php get.php在 cmd 中运行它
错误消息:
D:\project>php get.php
Fatal error: Call to undefined function curl_init() in D:\project\gals_curl_batch_download\get.php on line 3
Run Code Online (Sandbox Code Playgroud)
网页输出中的phpinfo()显示curl已启用
cURL support enabled
cURL Information libcurl/7.19.4 OpenSSL/0.9.8k zlib/1.2.3
Run Code Online (Sandbox Code Playgroud)
这是奇怪的事情 phpinfo() int 网页输出显示,实际上 php.ini 中启用的扩展可以在网页中运行。扩展的确切目录位于 ./ext 下
extension_dir ./ext ./ext
Run Code Online (Sandbox Code Playgroud)
但是 php -i | 找到“extension_dir”总是显示这个并且不能在 php.ini 文件中修改
extension_dir => C:\php5 => C:\php5
Run Code Online (Sandbox Code Playgroud)
重启apache几次,还是同样的错误。所以我想知道为什么extension_dir的值不能修改。
我有一个像下面这样的方法:
public IEnumerable<T> GetControls<T>()
: where T : ControlBase
{
// removed.
}
Run Code Online (Sandbox Code Playgroud)
然后我创建了一个类:
public class HandleBase<TOwner> : ControlBase
: TOwner
{
// Removed
}
Run Code Online (Sandbox Code Playgroud)
我想能打电话
GetControls<HandleBase<this.GetType()>>;
Run Code Online (Sandbox Code Playgroud)
它将使用THIS类的类型传递给HandleBase.这基本上会使所有拥有此类型所有者的HandleBase.
我怎样才能做到这一点?
编辑:
我正在使用.NET 2.0,因此大于2.0的解决方案将无效.
这个想法是让ControlBase拥有一个其他ControlBase的集合,用于"孩子们".然后可以根据它们的类型查询它们GetControls<T>().例如,这将允许我为Shape获取所有HandleBase.然后我可以采取所有这些并设置Visible = false或用它们做其他事情.因此,我可以为一个集合操纵特定类型的孩子.
HandleBase<TOwner>需要TOwner,因为它引用了"拥有类型".因此,您只能添加任何将HandleBase扩展到Shape的内容.合理?
感谢您的帮助!
我有一个asp.net网页(C#2008),用户可以在其中输入一个EmployeeID,当它们从文本框中跳出时(页面在代码隐藏中执行验证代码块),他们会得到一个消息框,提示他们选择一个下拉列表框中的两个值.
代码隐藏中的消息提示的代码是:
Response.Write("<script>window.alert('Please select Alpha or Beta')</script>");
Run Code Online (Sandbox Code Playgroud)
显示提示后,用户单击"确定"并返回页面,页面上的文本显示失真(标签中的文本大小更大,标签被包装到另一行等)
我尝试将一个Response.Redirect("UserProfileMaint.aspx");消息框放在代码隐藏中,但是现在,消息框没有出现;
所以这是我的顺序:
我想显示消息框验证,并确保页面上文本的外观不会失真.我怎样才能做到这一点?
给定一个XDocument实例,如何轻松获取表示该实例的TextReader?
我能想出的最好的东西是这样的(xmlXDocument实例在哪里):
var s = new MemoryStream();
var sw = new StreamWriter(s);
xml.Save(sw);
sw.Flush();
s.Position = 0;
TextReader tr = new StreamReader(s);
Run Code Online (Sandbox Code Playgroud)
然而,这似乎有点笨重,所以我想知道是否有更简单的方法?
编辑
上面的示例等效于将整个实例转换为XML字符串,然后在该字符串上创建TextReader.
我只是想知道是否有一种类似于流的方式来执行它而不是将整个内容读入内存.
我有一个我正在维护的传统的应用程序 - 应用程序.这是一个VB6应用程序调用Crystal Report(它看起来像Crystal 8),然后以编程方式打印到默认打印机,该打印机设置为Acrobat Distiller(v5.0).当它打印到PDF时,它会自动将生成的PDF放在一个文件夹(c:\ pdf)中,并将其命名为crystal report filename的前5个字符.发生的事情是文件名前面有两个相同字符的报告一个接一个地打印,第二个报告覆盖第一个.
蒸馏器是如何产生产量的?我可以调整输出路径或文件名吗?在哪里/为什么只使用报告文件名的前五个字符作为输出?或者这是一个水晶功能?
有没有办法在从Crystal打印时定义输出PDF 文件名?正如这样打印报告:
With CrPt
.Connect = "DSN=" & Trim(sServerName) & ";UID=usernam;PWD=password;DSQ=database"
.ReportFileName = sReport
.Formulas(0) = "version=""" & App.Major & "." & App.Minor & "." & App.Revision & """"
.Destination = crptToPrinter
.Action = 1
End With
有帮助吗?
谢谢!
我在这里已经阅读了这个非常相关的问题,由于答案中的链接,它非常有用.我现在只是遇到一个问题需要额外的步骤,并使其与MVVM模式一起工作.
假设我有自己的ViewModel,它(甚至模型)可以定义一个枚举:
public enum MyTypes { Type1, Type2, Type3 };
Run Code Online (Sandbox Code Playgroud)
我想在我的GUI中将其数据绑定到ComboBox.根据这篇文章,我将使用ObjectDataProvider来调用MyTypes上的Enum.GetValues()方法.所以我必须将MyTypes作为MethodParameter传递.但你怎么通过这种类型?我尝试了各种方法,比如在XAML中添加对命名空间的引用:
<Window.Resources>
<ObjectDataProvider MethodName="GetValues" ObjectType="{x:Type sys:Enum}" x:Key="TipHandlingValues">
<ObjectDataProvider.MethodParameters>
<!-- what goes here? it's totally wrong. -->
<my:MyTypes />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</Window.Resources>
Run Code Online (Sandbox Code Playgroud)
几乎没有我放在那里甚至会编译.有谁知道如何克服这个小障碍?
如何将参数传递给ASP.NET MVC OnSuccess中的AjaxOptions类的函数?
这是我的代码,但它不起作用:
<%= Ajax.ActionLink("Delete",
"Delete",
"MyController",
New With {.id = record.ID},
New AjaxOptions With
{
.Confirm = "Delete record?",
.HttpMethod = "Delete",
.OnSuccess = "updateCount('parameter')"
})
%>
Run Code Online (Sandbox Code Playgroud)
UPDATE
设置OnSuccess属性以(function(){updateCount('parameter');})解决我的问题:
<%= Ajax.ActionLink("Delete",
"Delete",
"MyController",
New With {.id = record.ID},
New AjaxOptions With
{
.Confirm = "Delete record?",
.HttpMethod = "Delete",
.OnSuccess = "(function(){updateCount('parameter');})"
})
%>
Run Code Online (Sandbox Code Playgroud) 我目前正在Silverlight 4中构建一个LOB应用程序.我一直在考虑应用程序的排版问题.
在设计方面经过一些实验后,人们喜欢的字体是Segoe UI.现在我可以嵌入这种字体,虽然字体在Windows中免费提供,但我们没有此字体的发行权.
我正在寻找一个开源字体,在视觉上等同于可以自由分发的Segoe系列.
这样的字体存在吗?
我想知道人们是否会分享他们处理异常和错误的最佳实践/策略.现在我不是在问什么时候抛出异常(这里已经得到了很好的回答:所以 :什么时候抛出异常).我并没有将它用于我的应用程序流程 - 但是有合理的例外情况一直在发生.例如,最受欢迎的是ActiveRecord :: RecordNotFound.处理它的最佳方法是什么?干嘛?
现在我在我的控制器中做了很多检查,所以如果Post.find(5)返回Nil - 我检查并发出一条flash消息.然而,虽然这是非常精细的 - 在某种意义上我需要检查每个控制器中的异常,但它们中的大多数基本相同并且与未找到的记录或未找到的相关记录有关 - 这样因为无论是Post.find(5)没有找到,或者如果你试图显示发布不存在的相关评论,这将抛出一个异常(像 Post.find(5).comments[0].created_at)
我知道你可以在ApplicationController中执行类似的操作,稍后在特定的控制器/方法中覆盖它以获得更细粒度的支持,但这是否是一种正确的方法呢?
class ApplicationController < ActionController::Base
rescue_from ActiveRecord::RecordInvalid do |exception|
render :action => (exception.record.new_record? ? :new : :edit)
end
end
Run Code Online (Sandbox Code Playgroud)
这也适用于Post.find(5)未找到的情况,但是Post.find(5).comments[0].created_at- 我的意思是如果帖子存在但是没有评论,我不能抛出一个完整的异常,对吧?
总结到目前为止,我正在使用if/else/except或者case/when(我偶尔承认开始/救援)并检查nil进行了大量的手动检查?或空?等等,但似乎必须有更好的方式.
回复:
@Milan:您好米兰感谢您的回复 - 我同意您所说的话,我认为我误用了例外.我的意思是,现在我做了很多事情,比如:
if Post.exists?(params[:post_id])
@p = Post.find(params[:post_id])
else
flash[:error] = " Can't find Blog Post"
end
Run Code Online (Sandbox Code Playgroud)
我做了很多这种"异常处理",我尽量避免使用开始/救援.但在我看来,这是一个足够普遍的结果/验证/情况,应该有一个DRYer方法来做到这一点,不是吗?你会怎么做这种检查?
在这种情况下如何处理呢?假设您要在视图中显示评论创建日期:
Last comment for this post at : <%= @post.comments[0].created_at %>
Run Code Online (Sandbox Code Playgroud)
这篇文章没有任何评论.你可以做
Last comment for …Run Code Online (Sandbox Code Playgroud) c# ×2
.net ×1
.net-2.0 ×1
acrobat ×1
asp.net-3.5 ×1
asp.net-ajax ×1
asp.net-mvc ×1
combobox ×1
data-binding ×1
enums ×1
exception ×1
font-face ×1
generics ×1
html ×1
linq-to-xml ×1
mvvm ×1
pdf ×1
php ×1
silverlight ×1
tags ×1
textreader ×1
vb6 ×1
wpf ×1