我需要从数据库中查询行,每行处理一些信息,然后用结果更新每一行。
这是我的示例代码,其意图是遍历每一行并更新标签:
var mysql = require('mysql');
var db = mysql.createConnection(config.database);
db.connect(function() {
db.query('SELECT id FROM testTable', function (err, rows) {
if (err) {
console.log(err);
} else {
if (rows.length) {
for (var i = 0, len = rows.length; i < len; i++) {
var row = rows[i];
console.log(row);
var label = "Label_"+row.id;
db.query('UPDATE testTable SET label = ? WHERE id = ?', [label, row.id], function(err, result) {
if (err) {
console.log(err);
} else {
console.log("Set label on row %s", row.id); …Run Code Online (Sandbox Code Playgroud) 我正在使用 Composer Dependency Manager for PHP,它不会安装最新版本的软件包。如何确定是什么阻碍了 Composer 安装最新版本?
例如,我symfony/console在composer.json版本中设置为:
"symfony/console": "~3.1",
Run Code Online (Sandbox Code Playgroud)
如果我运行composer outdated它会显示我symfony/console安装了 3.1.4 版本,并且该版本 3.3.5 可用并且与 semver 兼容。
$ composer outdated --no-ansi
symfony/console v3.1.4 ! v3.3.5 Symfony Console Component
Run Code Online (Sandbox Code Playgroud)
但是,如果我对更新进行试运行,则只有到 3.2.12 版为止。
$ composer update --dry-run --with-dependencies symfony/console
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 2 installs, 2 updates, 0 removals
- Updating symfony/polyfill-mbstring (v1.2.0) to symfony/polyfill-mbstring (v1.4.0)
- Installing psr/log (1.0.2)
- Installing symfony/debug (v3.3.5) …Run Code Online (Sandbox Code Playgroud) JetBrains DataGrip 有什么方法可以让我自动设置 SQL_MODE 以连接到 MySQL 数据库吗?
例如,MySQL Workbench 具有用于设置 SQL_MODE 的连接的特定字段。虽然 HeidiSQL 提供了一种执行启动脚本的方法。
我一直试图在对象上定义一个方法来用作 Mustache 模板的值,但 Mustache 模板没有正确调用它。所以我一定是做错了什么。
这是一个例子:
<?php
require './vendor/mustache/mustache/src/Mustache/Autoloader.php';
Mustache_Autoloader::register();
$t = new TplValues();
$t->planet = 'Earth';
$m = new Mustache_Engine();
echo $m->render('Hello, {{# caps}}{{planet}}{{/ caps}}!', $t);
class TplValues {
public function caps($text) {
return strtoupper($text);
}
}
Run Code Online (Sandbox Code Playgroud)
这个的输出是:
PHP Warning: Missing argument 1 for TplValues::caps(), called in /home/user/test/vendor/mustache/mustache/src/Mustache/Context.php on line 138 and defined in /home/user/test/test.php on line 14
PHP Notice: Undefined variable: text in /home/user/test/test.php on line 15
Hello, !
Run Code Online (Sandbox Code Playgroud)
我也试过在构造函数中使用助手:
<?php
require './vendor/mustache/mustache/src/Mustache/Autoloader.php';
Mustache_Autoloader::register();
$t = new stdClass(); …Run Code Online (Sandbox Code Playgroud) php ×2
asynchronous ×1
composer-php ×1
datagrip ×1
mustache ×1
mysql ×1
node-mysql ×1
node.js ×1
sql-mode ×1