版本记录以 xxx 格式存储在数据库中
知道现有版本的情况下,如何获取下一个版本的记录?
例如,我们有版本 0.0.1,我们需要下一个可用的版本,即 0.0.2 或如果不是,则为 0.0.3 等。
我的请求无法正常工作:
SELECT
*
FROM table
WHERE version > 0.0.1
ORDER BY id ASC
所以它会返回0.0.2,但是如果数据库中有1.2.1,那么它会返回它,这是一个错误。
版本记录以 xxx 格式存储在数据库中
知道现有版本的情况下,如何获取下一个版本的记录?
例如,我们有版本 0.0.1,我们需要下一个可用的版本,即 0.0.2 或如果不是,则为 0.0.3 等。
我的请求无法正常工作:
SELECT
*
FROM table
WHERE version > 0.0.1
ORDER BY id ASC
所以它会返回0.0.2,但是如果数据库中有1.2.1,那么它会返回它,这是一个错误。
$image = new ImageManager();
$img = $image->make("/img.jpg")->resize("300", null, function ($constraint) {
$constraint->aspectRatio();
});
$img->save("/new_img.jpg");
如果您从手机上传照片,照片会根据屏幕方向自动旋转,那么当上传到网站并通过ImageManager库时,它会保持展开状态。
如何在动态页面上展示 Yandex Direct 广告?该网站在 ajax 上运行,当滚动到页面末尾时,会加载一篇新文章,但广告不再有效。
我没有在 Yandex 文档和搜索中找到答案。
不可能编写一个用图片替换所有路径的正则表达式。编码:
preg_replace(
"/[http|\/](.+?)" . basename($content_image) . "/i",
$img_origin,
$result["content"]
);
在代码中,图片可以以 http 开头,也可以仅以斜杠开头。我也知道图片的名字。但最终,什么都没有改变。
行示例:
Lorem ipsum dolor <a href="http://site.com/">sit</a> amet. <a href="/uploads/test.jpg"><img src="/uploads/test.jpg" alt=""></a>
资源:
[display = "home"]
html code
[/display]
[display = "category"]
html code
[/display]
[display = "home"]
html code
[/display]
告诉我如何编写正则表达式,例如,将短代码[display = "home"]...[/display]
替换为空。主要是他会被轮流换下。也就是说,正则表达式应该匹配开头[display = "..."]...
和找到的第一个[/display]
,而不是最后一个。试图描述清楚。
我循环执行此操作,但结果很糟糕:
$pattern = str_replace(["\"", "[", "]", " ", "/"], ["\\\"", "\[", "\]", "\s+", "\/"], $display[1][$key]);
$pattern2 = str_replace(["\"", "[", "]", " ", "/"], ["\\\"", "\[", "\]", "\s+", "\/"], $display[4][$key]);
$result = preg_replace('/'.$pattern.'(.+?)'.$pattern2.'/is', "", $result);
$pattern
它击中了哪里\[display = \"home\"\]
,但$pattern2
它击中了,\[\/display\]
但最终结果不是预期的。
post[content_1537704579186][settings][code]
您需要code
从字符串中获取方括号中的最后一个单词。
我这样做:
"post[content_1537704579186][settings][code]".match( /\[(.+?)\]/ig );
但这就是我获得三个数组的方式。当然,我可以稍后再拿到最后一个,哦,那不对。突然会有更多的元素在括号中,否则我需要得到倒数第二个。
有数组:
$data = [
array(
[0] => "Автобусные",
[1] => "Пешеходные"
),
array(
[0] => "Исторические",
[1] => "Пешеходные",
[2] => "Водные"
),
array(
[0] => "Пешеходные",
[1] => "Тематические",
[2] => "Исторические"
)
];
很长的路要走:
$result = [];
foreach ($data as $row) {
foreach ($row as $val) {
if(!empty($val)) array_push($result, $val);
}
}
$result = array_count_values($result);
结果:
Array(
[Автобусные] => 1
[Пешеходные] => 3
[Исторические] => 2
[Водные] => 1
[Тематические] => 1
)
有没有办法更快地重新计算数组中的值?
我在数据库中搜索输入的每个字母。但是为了减少负载,摆脱频繁的请求,需要统计一下,比如发送ajax之前的1-2秒,如果那个时候用户没有输入任何其他内容,那么我们发送请求。如果您输入了,那么您需要再次计数 1-2 秒,然后才发送请求。
$(document).on("keyup", "#city_search input", function(){
var word = $(this).val();
setTimeout(function(){
// отправляем ajax запрос
}, 1000)
})
我在哪里可以添加 stop() 以停止发送并再次计数 1-2 秒?对于许多网站来说,这就是搜索的工作方式。
或者它已经在 PHP 中完成了?
我在 PHP 中工作。您需要替换所有扩展名为 jpg、png 等的链接。我这样做:
$row["message"] = preg_replace('/<a\shref=\"(.+?[jpeg|jpg|png])\"\starget=\"_blank\">(.+?)<\/a>/is', '<a data-fancybox="gallery" href="$1"><img src="$1" alt="" class="tmp_class"></a>', $row["message"]);
用于测试以下行:
<p>С этой формы приходят заявки <a href="https://site.com/lack_tech.php">https://site.com/lack_tech.php</a></p>
<p>Или что ты имеешь ввиду?</p>
<div class="attachment_files_message">
<p>Прикреплённые файлы:</p>
<a href="http://site.com/public/uploads/kylticket/2670/Screenshot_1.png" target="_blank">Screenshot_1.png</a>
</div>
也就是说,您需要替换第二个链接,根据我的代码,链接开头<a href="....
和最后一个结束标记之间的所有内容都被替换</a>
goods = 3:{id: "3", title: "Название товара", price: "7300", count: 1, countMax: "15"}
goods[data.id]["count"] = parseInt(goods[data.id]["count"]) + 1;
data
对象完全一样。而你只需要增加价值count
。
正如我在示例中所做的那样,对象保持不变。如何增加价值count
?
如何将数据绑定到表单,以便所有内容都按应有的方式传递给处理程序?
var data = new FormData();
var forma = $("#my_form").serialize();
$.each($("#idea_files")[0].files, function(i, file) {
data.append("files[]", file);
});
$.ajax({
url: $url,
type: "POST",
data: data,
processData: false,
contentType: false,
success: function(data){
console.log(data);
},
error: function( jqXHR, textStatus, errorThrown ){
console.log('ОШИБКА: ' + textStatus );
}
});
该表具有字段 id、status ...
如何获得相同值的数量,同时获得此选项[id] => val
该解决方案的计算并不像它应该的那样:
\R::getCol('SELECT COUNT(status) FROM ideas GROUP BY status');
结果现在是:
Array
(
[0] => 2
[1] => 1
[2] => 1
)
并且键必须有一个id,否则不清楚哪个id有多少个相同的值。
PS:我正在使用 RedBeans。
我从表中获取数据,执行 foreach 并将数据放入表中:
$objPHPExcel->getActiveSheet()->setCellValue('C'.$i, $row["title"]);
所有数据都在那里,没有空的,没有多余的字符,我检查了rawurldecode()
整数。我得到了所有字段,但我不想要新闻的名称和类别的名称。可能是什么问题呢?也许问题出在 windows-1251 编码中?
告诉我如何检查从 2 到无穷大的数字?
^category/page-(?P<page>[0-9]+)$
也就是说,如果在 page-0 或 page-1 行中,那么这不适合正则表达式。
帮助将字符串解析为 id 和 classes。不是这样的,他只理解第一个解析或id或类,然后昏迷。
$str = ".cl_name.cl_name2#send.cl_name3"
preg_match('/(^#(?P<id>.+?)[\s|\.])?(\.(?P<class>.+?)[\s|\.|#])?/is', $str, $match);
print_r($match);
是否有用于漂亮 JSON 字符串格式的 php 类?结果证明 Json 非常大,如果在一行中写入文件,它的可读性会很差。
ALTER TABLE table_name DROP COLUMN field1, field2
如何在一个查询中从表中删除多个列?
ALTER TABLE table_name change field1 new_field text, field2 new_field2 varchar(100)
如何一次重命名多个字段,有可能吗?
如何在 div 内准确滚动,而不是在整个页面上滚动?
$(function(){
$(document).on("keyup", ".search", function(){
var search_text = $(this).val();
$("html:not(:animated),body:not(:animated)").animate({
scrollTop: $('.videos a:contains("'+search_text+'")').offset().top
}, 1000);
})
})
.videos{
max-height: 100px;
overflow-y: auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="search">
<ul class="videos">
<li><a href="#">Видео 1</a></li>
<li><a href="#">Видео 2</a></li>
<li><a href="#">Видео 3</a></li>
<li><a href="#">Видео 4</a></li>
<li><a href="#">Видео 5</a></li>
<li><a href="#">Видео 6</a></li>
<li><a href="#">Видео 7</a></li>
<li><a href="#">Видео 8</a></li>
<li><a href="#">Видео 9</a></li>
<li><a href="#">Видео 10</a></li>
</ul>