我需要找出每个模式(行的模式,而不是列)获得的值,它在我的数据行中出现的次数.
这是我的数据
> head(TiposMotivA)
Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Q16 Q17 Q18 Q19 Q20 Q21
1 5 4 4 4 6 6 7 6 4 6 6 6 4 4 4 4 6 7 4 4 6
2 5 4 4 5 5 5 5 5 5 5 7 5 4 3 1 6 6 5 6 7 7
3 4 5 4 4 5 4 5 4 5 4 …
Run Code Online (Sandbox Code Playgroud) 今天,我的cURL开始向我显示此错误,Could not resolve: {local-domain.test} (domain name not found)
如果我尝试从外部链接获取某些信息,则一切正常,但是本地站点无法正常工作。
所以,这是我的代码
public function send($type, $url, $data)
{
$type = strtolower($type);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
if ($type == 'post') {
$urlWithData = http_build_query($data);
curl_setopt($ch, CURLOPT_POST, count($data));
curl_setopt($ch, CURLOPT_POSTFIELDS, $urlWithData);
}
$result = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$out = new \stdClass();
$out->status = $status;
$out->body = json_decode($result, true);
return $out;
}
Run Code Online (Sandbox Code Playgroud)
如果我将该主机添加到我的/ etc / hosts /文件中,那么所有主机都将开始工作,但是我拥有大量的域,并且在更新PHP之前,我都可以正常工作。我正在使用dnsmasq作为动态主机解析工具。
有几个地方我根据类实现的接口执行逻辑 - 有什么理由可能会出错也可能没出错?(感觉很脏)
这样做的原因是你不必添加任何类属性或方法来确定这些东西,基本上在类定义中你可以明确说明它能做什么/不能做什么.
一个用例是ajax调用,有些需要你登录,有些则不需要:
class ajax_ads extends ajax_controller implements no_login {
}
Run Code Online (Sandbox Code Playgroud)
此外,界面中没有方法,为此目的使用soley.
interface no_login {}
Run Code Online (Sandbox Code Playgroud)
然后在基本控制器中:
$controller = controller::factory()
if( !($controller instanceof no_login) && !$controller->LoggedIn()){
return $controller->redirect(/*login page*/);
}
Run Code Online (Sandbox Code Playgroud)
使用instance_of看起来轻巧简单,它工作正常,但再次感觉我完全滥用界面的目的.
所以我问,是用一个接口来判断逻辑是个坏主意,糟糕的oop还是'好吧'?
我想创建一个 C/C++ 在线编译器。
到目前为止我已经开发了以下代码:
<?php
error_reporting(E_ALL);
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);
compile();
}
function compile()
{
$a=shell_exec('gcc -o Compile Compile.c');
echo $a;
$b=shell_exec('./Compile');
echo $b;
}
?>
Run Code Online (Sandbox Code Playgroud)
文件 Compile.c 正在上传,然后由 gcc 编译。我想做的是:
我在网上搜索发现如果编译语句附加“2>&1”作为
$a=shell_exec('gcc -o Compile Compile.c 2>&1');
Run Code Online (Sandbox Code Playgroud)
然后编译错误的输出返回到分配的变量(上面例子中的$a),但不是没有它。所以我的问题是如何检查错误然后将其显示在网页上而不附加“2>&1”,如果没有错误,则执行上面给出的第二步。
我的记录器对象在每行的末尾输出空数组 - [] []
.例如;
[2017-08-17 12:26:02] import_log.INFO:checkForDuplicates :: is_processing [] []
[2017-08-17 12:26:04] import_log.INFO:is duplicate [] []
无论如何我可以阻止这种情况发生吗?我只想在没有空数组的情况下注销,即如下所示:
[2017-08-17 12:26:02] import_log.INFO:checkForDuplicates :: is_processing
[2017-08-17 12:26:04] import_log.INFO:重复
我正在创建自己的日志:
protected function importXML($fName) {
// Create a log file for each XML file imported
$logger = new Logger("import_log");
$logger->pushHandler(new StreamHandler(storage_path('./logs/' . $fName . '.log')), Logger::INFO);
....
$logger->info($myString);
....
$logger->info($myObject);
}
Run Code Online (Sandbox Code Playgroud) 我在 a 上有一个 aria-live 区域role="alert"
,其值"assertive"
未在表单提交中说出。当时它也是由 PHP 编写的,就像页面加载一样。
它在 PC 上的 NVDA 中运行良好,但在 Mac 上却什么也说不出来。我发誓我之前已经测试过这一点并且经常使用这种技术。
有什么想法为什么不被谈论吗?
div 看起来像这样:
<div class="alert alert-danger" role="alert" aria-live="assertive">Error: please fix the indicated fields:</div>
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用以下API获取实时汇率.
"http://www.exchangerate-api.com/INR/USD/1?k=FQRxs-xT2tk-NExQj"
Run Code Online (Sandbox Code Playgroud)
当我点击一个按钮时,它会提醒率并且工作得很好.我正在使用以下Ajax代码.
<script type="text/javascript" language="javascript">
function testCurrencyRate()
{
$.ajax({
datatype:"html",
type: "GET",
url: "ajax/LiveCurrencyRate.php",
data: "t="+new Date().getTime(),
success: function(response)
{
alert(response);
},
error: function(e)
{
alert('Error while fetchig the live currency rate.');
}
});
}
</script>
Run Code Online (Sandbox Code Playgroud)
Ajax请求转到LiveCurrencyRate.php
如下页面.
$url="http://www.exchangerate-api.com/INR/USD/1?k=FQRxs-xT2tk-NExQj";
$result = file_get_contents($url);
echo $result;
Run Code Online (Sandbox Code Playgroud)
并且<form></form>
它包含唯一的按钮,当单击该按钮时,会在此URL上发出Ajax请求ajax/LiveCurrencyRate.php
.
<form id="testForm" name="testForm" action="" method="post">
<input type="submit" id="btnTestCurrencyRate" name="btnTestCurrencyRate" value="Test" onclick="testCurrencyRate();"/>
</form>
Run Code Online (Sandbox Code Playgroud)
一切都好.然而,问题出现了,当我从改变按钮类型type="button"
来type="submit"
,这是行不通的.Ajax函数的错误部分中的警告框只显示警报框一段时间,突然它消失了.我找不到任何可能阻止此请求完成的合理原因.在我之前的项目中,同样的事情对我有用,但我用它XMLHttpRequest
来制作Ajax请求.这里出了什么问题?