小编Art*_*san的帖子

composer.json中require和require-dev部分之间有什么区别?

我开始使用作曲家,我对它知之甚少,并且对Web应用程序开发有一点经验.

我只是通过Nettuts + Tutorial,所以我有关于作曲家的基本问题.

{
  "require": {
    "laravel/framework": "4.0.*",
    "way/generators": "dev-master",
    "twitter/bootstrap": "dev-master",
    "conarwelsh/mustache-l4": "dev-master"
  },
  "require-dev": {
    "phpunit/phpunit": "3.7.*",
    "mockery/mockery": "0.7.*"
  },
  "autoload": {
    "classmap": [
      "app/commands",
      "app/controllers",
      "app/models",
      "app/database/migrations",
      "app/database/seeds",
      "app/tests/TestCase.php"
    ]
  },
  "scripts": {
    "post-update-cmd": "php artisan optimize"
  },
  "minimum-stability": "dev"
}
Run Code Online (Sandbox Code Playgroud)
  1. 无论"require-dev"部分出现什么,只会下载并安装作曲家安装--dev
  2. 我读了一些作曲家的文档,但仍然不明白我们有"require-dev"部分的原因是什么?是因为我们想获得特定版本的软件包,而不是总是获得最新的稳定版本?

composer-php

78
推荐指数
3
解决办法
8万
查看次数

如何通过composer下载后设置bootstrap?

我刚刚开始使用作曲家,我对它知之甚少,并且对Web应用程序开发有一点经验.

我刚刚浏览了Nettuts + Tutorial,所以我有一个关于作曲家的基本问题.

{
  "require": {
    "laravel/framework": "4.0.*",
    "way/generators": "dev-master",
    "twitter/bootstrap": "dev-master",
    "conarwelsh/mustache-l4": "dev-master"
  },
  "require-dev": {
    "phpunit/phpunit": "3.7.*",
    "mockery/mockery": "0.7.*"
  },
  "autoload": {
    "classmap": [
      "app/commands",
      "app/controllers",
      "app/models",
      "app/database/migrations",
      "app/database/seeds",
      "app/tests/TestCase.php"
    ]
  },
  "scripts": {
    "post-update-cmd": "php artisan optimize"
  },
  "minimum-stability": "dev"
}
Run Code Online (Sandbox Code Playgroud)

如果我如上所述设置我的composer.json,在执行之后composer.json,如何让Lastvel项目中的bootstrap可用?

我的意思是,我可以看到bootstrap包被下载到供应商目录.之前我只是从它的官方网站下载bootstrap并手动将文件放在Laravel的公共目录中,但此时正确的方法是什么?我可以将引导文件保留在原来的位置,因为我希望定期将引导程序包更新到它的最新版本吗?

谢谢.

laravel composer-php laravel-4 twitter-bootstrap-3

30
推荐指数
3
解决办法
4万
查看次数

Bootstrap 3,如何在导航栏上右键对齐按钮?

我在这里主持编码和预览.

我想对齐我的第二个按钮,请告诉我该怎么做.

谢谢.

twitter-bootstrap twitter-bootstrap-3

29
推荐指数
4
解决办法
9万
查看次数

如何访问Carbon对象类型?

给出以下代码:

$recordSets = Model::find(1)->get();

foreach ($recordSets as $recordSet) {
  dd($recordSet['created_at']);
}
Run Code Online (Sandbox Code Playgroud)

我得到了这个结果.

object(Carbon\Carbon)[292]
  public 'date' => string '2013-08-21 17:05:19' (length=19)
  public 'timezone_type' => int 3
  public 'timezone' => string 'UTC' (length=3)
Run Code Online (Sandbox Code Playgroud)

我尝试使用"访问日期"

echo $recordSet['created_at']->date;
Run Code Online (Sandbox Code Playgroud)

但是我收到了一个错误:

未知的吸气'日期'

怎么访问$recordSet['created_at']?它仅用于格式化日期/时间目的.

php datetime laravel laravel-4

18
推荐指数
2
解决办法
2万
查看次数

如何修复作曲家post-install-cmd脚本的错误?

我想使用composer脚本进行一些安装后的操作,例如将文件从bootstrap vendor文件夹复制到我的Web应用程序公用文件夹.我有PHP世界和Web应用程序开发的宝贝经验.

我正在尝试通过遵循本教程学习一点

这是我的目录结构* 在此输入图像描述

这是我的composer.json

{
    "name": "Composer Script",
    "description": "An example to demonstrate the use of Composer scripts",
    "version": "1.0.0",
    "require": {
        "twitter/bootstrap": ">=3.0"
    },

    "scripts": {
        "post-install-cmd": [
            "ComposerScript\\Installer::postInstall"
        ],
        "post-package-install": [
            "/var/www/test/composer-script/install.sh"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

这是ComposerScript\Installer.php

class Installer

    {
        public static function postInstall(Event $event)
        {
            $composer = $event->getComposer();
            // do stuff
        }

        public static function postPackageInstall(Event $event)
        {
            $installedPackage = $event->getOperation()->getPackage();
            // do stuff
        }

        public static function warmCache(Event $event)
        {
            // …
Run Code Online (Sandbox Code Playgroud)

php autoloader composer-php

9
推荐指数
1
解决办法
9816
查看次数

SSL自签名证书上的Chrome(net :: ERR_CERT_COMMON_NAME_INVALID)错误

我使用自签名证书尝试建立一个网站在localhost Express.js在Windows 10.下面是Express.js服务器代码.

index.js

const https = require('https')
const express = require('express')
const app = express()
const fs = require('fs')
const path = require('path')

const httpsOptions = {
    cert: fs.readFileSync(path.resolve(__dirname, 'ssl', 'ca.crt')),
    key: fs.readFileSync(path.resolve(__dirname, 'ssl', 'ca.key'))
}

const router = require('./router')

app.use('/people', router)

https.createServer(httpsOptions, app)
    .listen(3443)
Run Code Online (Sandbox Code Playgroud)

我还将证书颁发机构ca.crt文件导入chrome,然后重新启动chrome.但我仍然在chrome上有错误,如下所示:

在此输入图像描述

请指导如何解决这个问题谢谢


我使用以下命令创建了密钥和证书.

# certificate authority key
openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out ca.key

# server key
openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out server.key

# certificate authority
openssl req …
Run Code Online (Sandbox Code Playgroud)

google-chrome ssl-certificate node.js express

7
推荐指数
1
解决办法
9902
查看次数

使用docker compose时永远不会执行docker-entrypoint-initdb.d中的文件

我在Windows 10上使用Docker Toolbox

我可以通过http://192.168.99.100:8000成功访问php部分,我一直在研究mariadb部分,但仍然有一些问题

我有一个sql文件,/mariadb/initdb/abc.sql因此应该将其复制到中/docker-entrypoint-initdb.d,在创建容器之后,我使用它docker-compose exec mariadb来访问该容器,虽然存在该文件,/docker-entrypoint-initdb.d/abc.sql但该文件从未执行过,但我还测试了如何手动将sql文件导入到该容器中,成功了,因此sql文件有效

我不太了解数据文件夹映射,以及如何使文件夹与容器同步,我总是在使用重新创建容器时收到警告 docker-compose up -d

WARNING: Service "mariadb" is using volume "/var/lib/mysql" from the previous container. Host mapping "/.../mariadb/data" has no effect. Remove the existing containers (with docker-compose rm mariadb) to use the Recreating db ... done

问题

  1. 如何获取/docker-entrypoint-initdb.d要执行的sql文件?
  2. 用mariadb容器映射数据文件夹的正确方法是什么?

请指导谢谢

这是我的 docker-compose.yml

version: "3.2"
services:
    php:
        image: php:7.1-apache
        container_name: web
        restart: always
        volumes:
            - /.../php:/var/www/html
        ports:
            - "8000:80"
    mariadb:
        image: mariadb:latest …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose docker-machine

6
推荐指数
1
解决办法
3200
查看次数

composer create-project和git clone之间的主要区别是什么?

我想开发一个基于Laravel框架的Web应用程序,而根本不需要对框架做出贡献.我喜欢在开发自己的Web应用程序时定期从框架获取更新.我也喜欢为自己和我的队友使用版本控制系统.

我不确定两者之间使用哪种策略

使用作曲家

composer create-project laravel/laravel webproject --prefer-dist
Run Code Online (Sandbox Code Playgroud)

并定期使用Laravel进行更新

composer update
Run Code Online (Sandbox Code Playgroud)

用git

git clone https://github.com/laravel/laravel.git webproject
Run Code Online (Sandbox Code Playgroud)

并定期使用Laravel进行更新

git pull
Run Code Online (Sandbox Code Playgroud)

它们之间的主要区别是什么?我知道的是,作曲家创建项目--perfer-dist带有清理版本控制,还有什么?

如果我最初使用git clone,使用composer update从框架获取更新会造成什么伤害?

git composer-php

5
推荐指数
1
解决办法
682
查看次数

在Express.js中设置默认视图路径

源代码

app.js

var express = require('express');
var app = express();
var path = require('path');
var viewPath = path.join(__dirname, 'app/views');

app.set('views', viewPath);
app.set('view engine', 'jade');

app.get('/', function(req, res) {
    res.render('index', { title: 'Home Page' } );
});

app.listen(3000);
Run Code Online (Sandbox Code Playgroud)

文件夹结构

app
????views     
?        ????index.jade
????app.js
Run Code Online (Sandbox Code Playgroud)

浏览器出错

错误:无法index在views目录中查找视图d:\Users\Admin\Documents\...\project\views

我想通过放置视图文件来构建我的应用程序app/views/*.jade,但到目前为止我无法使用它,使用app.set('views', ...)应该工作但它不

console.log(viewPath) 节目 d:\Users\Admin\Documents\...\project\app\views

我也试过app.set('views', 'xxx')但是错误仍然停留在同一条路径上,似乎app.set()从来没有被调用过,这里有什么问题?请指导.

谢谢

编辑

无论我使用app.set('views', 'xxx')错误设置什么都将是错误:无法index在视图目录中查找视图d:\Users\Admin\Documents\...\project\views(始终保持说明相同的路径)

我很抱歉router.get('/', ...),我实际上项目的文件不同,所以我在这里弄错了

view express

5
推荐指数
1
解决办法
9322
查看次数

在启动时使用管理员权限运行.bat文件

我在同一台机器上使用Ubuntu和Windows,并且在启动到Windows时总是有不正确的时间问题,因此我喜欢w32tm /resync在启动时执行.

所以我试图将此命令放入.bat文件并将其放在启动文件夹中,但此命令需要管理员权限,因此请指导我如何使其工作.

谢谢.

我正在使用Windows 7旗舰版.

windows batch-file

3
推荐指数
2
解决办法
1万
查看次数