작곡가 패키지를 직접 작성하고 게시용으로 업로드하는 방법
1. Composer 소개
Composer는
PHP5.3
이상을 위한종속성 관리 도구
입니다. 이를 통해 프로젝트가 의존하는 코드 라이브러리를 선언할 수 있으며 프로젝트에 해당 라이브러리가 설치됩니다. 이를 통해 우리는 쉽게명령을 사용
하여 다른 우수한 코드를 프로젝트에 참조할 수 있습니다.PHP5.3
以上 的一个依赖管理工具
。它允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。有了它我们就可以轻松的使用一个命令
将其他优秀代码引用到我们的项目中来。
二、依赖包管理工具
java有maven
,前端有npm
,安卓有Gradle
,作为世界上最好的语言
也就有了composer
三、composer的优势
- 你有一个项目依赖于若干个库。
- 其中一些库依赖于其他库。
- 你声明你所依赖的东西。
- Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
四、composer常用命令
-
composer require
:安装一个软件包 -
composer update
:会检测新版本包需要的环境和依赖自动实现工具包的升级 -
composer install
:如果没有composer.json文件,会安装composer.json中的依赖 -
composer init
:会初始化一个composer.json配置文件五、composer的安装
参照菜鸟教程
六、手写一个composer包
在站点下新建一个目录,名为blog
。
1、目录下执行:composer init
执行完后,让我们输入一个包名,我就叫guangtouqiang/blog
把。
包名
name
- 包的名称,它包括供应商名称和项目名称,使用 / 分隔。
- 对于需要发布的包(库),这是必须填写的。
- 例如,phpmailer/phpmailer
2、执行guangtouqiang/blog
:
接下来让输入描述。
描述
description
- 一个包的简短描述。通常这个最长只有一行。
- 对于需要发布的包(库),这是必须填写的。
3、输入描述this is guangtouqiang test bag
4、输入作者名称(可选)
作者
authors
- 这个对象必须包含以下的所有属性。
- name: 作者的姓名,通常使用真名。
- email: 作者的 email 地址。
- homepage: 作者主页的 URL 地址。
- role: 该作者在此项目中担任的角色(例:开发人员 或 翻译)。
5、输入最低稳定版本
可用的稳定性标识:dev、alpha、beta、RC、stable。
,一般选择dev
。
6、输入包类型
🎜🎜2. 종속성 패키지 관리 도구🎜🎜java에는包类型
type
maven
이 있고 프런트 엔드에는 npm
이 있으며 Android에는 가 있습니다. Gradle
에는 세계 최고의 언어
에도 composer
🎜🎜🎜🎜3.composer의 장점🎜- 프로젝트가 있습니다. 여러 라이브러리에 대한 종속성.
- 이러한 라이브러리 중 일부는 다른 라이브러리에 의존합니다.
- 당신은 당신이 의존하는 것을 선언합니다.
- Composer는 설치해야 할 패키지 버전을 파악하고 설치합니다(프로젝트에 다운로드).
-
작성기 요구 사항
:🎜소프트웨어 패키지 설치 작성기 업데이트 : 🎜 도구 패키지를 자동으로 업그레이드하기 위해 새 버전의 패키지에 필요한 환경과 종속성을 감지합니다.<br><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/020/ae6bea1f1fef591d0821649a7fe47455-4.gif" class="lazy" alt="여기에 이미지 설명 삽입">
-
composer 설치
: 🎜composer.json 파일이 없는 경우 , 작곡가는 .json에 종속성을 설치합니다. -
composer init
: 🎜는 작곡가.json 구성 파일을 초기화합니다🎜🎜🎜5. 작곡가 설치🎜초보 튜토리얼 참조
blog
라는 새 디렉터리를 만듭니다. 🎜🎜🎜1. composer init
🎜🎜
실행 후 패키지 이름을 입력하겠습니다.
guangtouqiang/blog
라고 부르겠습니다. 🎜🎜🎜패키지 이름 name
🎜- 공급업체 이름과 프로젝트 이름이 포함된 패키지 이름이며 /로 구분됩니다.
- 게시해야 하는 패키지(라이브러리)의 경우 이를 입력해야 합니다.
- 예: phpmailer/phpmailer
guangtouqiang/blog
를 실행합니다:🎜🎜
다음으로 설명을 입력하겠습니다. 🎜🎜🎜Description
설명
🎜- 패키지에 대한 간단한 설명입니다. 일반적으로 이 줄은 최대 한 줄입니다.
- 게시해야 하는 패키지(라이브러리)의 경우 이를 입력해야 합니다.
광두강 테스트백입니다
🎜🎜
🎜4.
저자 이름 입력(선택 사항)
강력>🎜🎜
- 이 개체는 다음 속성을 모두 포함해야 합니다.
- name: 작성자의 이름, 일반적으로 실제 이름입니다.
- email: 작성자의 이메일 주소입니다.
- 홈페이지: 작성자 홈페이지의 URL 주소입니다.
- 역할: 이 프로젝트에서 작성자가 수행하는 역할(예: 개발자 또는 번역가)입니다.
dev, alpha, beta, RC, stable.
인 경우 일반적으로 dev
를 선택합니다. 🎜🎜🎜6. 패키지 유형 입력🎜🎜🎜패키지 유형 type
🎜- 包的安装类型,默认为
library。
- library: 这是默认类型,它会简单的将文件复制到 vendor 目录。
- project: 这表示当前包是一个项目,而不是一个库。例:框架应用程序 Symfony standard edition,内容管理系统 SilverStripe installer 或者完全成熟的分布式应用程序。使用 IDE 创建一个新的工作区时,这可以为其提供项目列表的初始化。
- metapackage: 当一个空的包,包含依赖并且需要触发依赖的安装,这将不会对系统写入额外的文件。因此这种安装类型并不需要一个 dist 或 source。
- composer-plugin: 一个安装类型为 composer-plugin 的包,它有一个自定义安装类型,可以为其它包提供一个 installler。详细请查看 自定义安装类型。
默认为 library
我们选择1,library
即可!
7、需要输入开源协议
选择输入GPL,LGPL,BSD,MIT,Apache
这些开源协议即可:
8、是否依赖于其它包,是否依赖于其它环境,这边都yes即可。
Search for a package
:选择搜索php。
9、生成成功。
此时,目录下已经有个composer
这些配置:
七、composer目录的修改
看下刚刚生成的composer.json
:
{ "name": "guangtouqiang/blog", "description": "this is guangtouqiang test bag", "type": "1", "require": { "php": "^7.0" }, "license": "Apache-2.0", "authors": [ { "name": "guangtouqiang", "email": "xiaozhengguo521@gmail.com" } ], "minimum-stability": "dev"}
再次基础上增加:
{ "name": "guangtouqiang/blog", "description": "this is guangtouqiang test bag", "type": "1", "require": { "php": "^7.0" }, "license": "Apache-2.0", "authors": [ { "name": "guangtouqiang", "email": "xiaozhengguo521@gmail.com" } ], "minimum-stability": "dev", "autoload": { "psr-4": { "guangtouqiang\\": "src/guangtouqiang" } }}
命令行执行:composer dump-autoload
,更新composer的命名空间与文件夹映射关系。
同样,需要新建一个src
和guangtouqiang
的文件夹:
在根目录新建个index.php
测试一波:
输出:
注意命名空间的层级与文件夹层级是否相同,类名与文件名相同才能自动加载。
八、将写好的composer包上传
1、在github上新建个仓库
2、将本地的composer包上传到新仓库
git init
git add .
git commit -m "xxx"
git remote add origin 你的远程仓库地址
git push -u origin master
3、登录https://packagist.org/packages/submit
4、将你github上的仓库地址复制进去:
5、配置webhook:
6、复制上图地址到github。
웹훅
추가: webhook
:
这时候,github仓库与packagist已经建立了关联。但是还需要进行发布正式版本才能使用。
7、打版本标签
git tag -a v1.0.1 -m "第一版"
git push origin v1.0.1
此时,已经标签成功了,从packagist能看到我们所有的版本。
执行composer require xx/xxx

지금까지 , github 저장소와 packagist가 연결되었습니다. 하지만 아직 정식 버전으로 출시해야 사용할 수 있습니다.
7. 버전을 태그하세요git tag -a v1.0.1 -m "첫 번째 버전"
git push Origin v1.0.1
현재 , 라벨링이 성공적으로 이루어졌으며 모든 버전은 packagist에서 볼 수 있습니다. 작곡가 실행 xx/xxx 필요는 다른 사람이 사용할 수 있습니다.
위 내용은 작곡가 패키지를 직접 작성하고 게시용으로 업로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Laravel은 웹 응용 프로그램을 쉽게 구축하기위한 PHP 프레임 워크입니다. 설치 : Composer를 사용하여 전 세계적으로 Laravel CLI를 설치하고 프로젝트 디렉토리에서 응용 프로그램을 작성하는 등 다양한 기능을 제공합니다. 라우팅 : Routes/Web.php에서 URL과 핸들러 간의 관계를 정의하십시오. 보기 : 리소스/뷰에서보기를 작성하여 응용 프로그램의 인터페이스를 렌더링합니다. 데이터베이스 통합 : MySQL과 같은 데이터베이스와 상자 외 통합을 제공하고 마이그레이션을 사용하여 테이블을 작성하고 수정합니다. 모델 및 컨트롤러 : 모델은 데이터베이스 엔티티를 나타내고 컨트롤러는 HTTP 요청을 처리합니다.

CRAFTCMS를 사용하여 웹 사이트를 개발할 때 특히 CSS 및 JavaScript 파일을 자주 업데이트 할 때 자주 리소스 파일 캐싱 문제가 발생하면 이전 버전의 파일이 여전히 브라우저에서 캐싱 될 수 있으므로 사용자는 최신 변경 사항을 볼 수 없습니다. 이 문제는 사용자 경험에 영향을 줄뿐만 아니라 개발 및 디버깅의 어려움을 증가시킵니다. 최근에 나는 프로젝트에서 비슷한 문제를 겪었고, 약간의 탐색 후 플러그인 Wiejeben/Craft-Laravel-Mix를 발견하여 캐싱 문제를 완벽하게 해결했습니다.

많은 교리 단체와 함께 프로젝트를 수행 할 때 어려운 문제가있었습니다. 엔티티가 직렬화되고 사막화 될 때마다 성능이 매우 비효율적 이어져 시스템 응답 시간이 크게 증가합니다. 여러 최적화 방법을 시도했지만 잘 작동하지 않습니다. 다행스럽게도 Sidus/Doctrine-Serializer-Bundle을 사용 하여이 문제를 성공적으로 해결하여 프로젝트의 성능을 크게 향상 시켰습니다.

메일 마케팅 캠페인을 할 때 까다로운 문제가 있습니다. HTML 형식으로 효율적으로 메일을 작성하고 보내는 방법. 기존의 접근 방식은 수동으로 코드를 작성하고 SMTP 서버를 사용하여 이메일을 보내는 것이지만 이는 시간이 많이 걸릴뿐만 아니라 오류가 발생하기 쉽습니다. 여러 솔루션을 시도한 후 HTML 메일을 신속하게 만들고 보내는 데 도움이되는 간단하고 사용하기 쉬운 RESTAPI 인 Duwa.io를 발견했습니다. 개발 프로세스를 더욱 단순화하기 위해 작곡가를 사용하여 duwa.io의 PHP 라이브러리 인 CaptainDoe/Duwa를 설치하고 관리하기로 결정했습니다.

기사 요약 :이 기사는 Laravel 프레임 워크를 쉽게 설치하는 방법에 대한 독자들을 안내하기위한 자세한 단계별 지침을 제공합니다. Laravel은 웹 애플리케이션의 개발 프로세스를 가속화하는 강력한 PHP 프레임 워크입니다. 이 자습서는 시스템 요구 사항에서 데이터베이스 구성 및 라우팅 설정에 이르기까지 설치 프로세스를 다룹니다. 이러한 단계를 수행함으로써 독자들은 라벨 프로젝트를위한 탄탄한 토대를 빠르고 효율적으로 놓을 수 있습니다.

전자 상거래 플랫폼을 개발할 때는 올바른 프레임 워크와 도구를 선택하는 것이 중요합니다. 최근에 기능이 풍부한 전자 상거래 웹 사이트를 구축하려고 할 때 어려운 문제가 발생했습니다. 확장 가능하고 완벽하게 기능적인 전자 상거래 플랫폼을 신속하게 구축하는 방법. 여러 솔루션을 시도하고 Fecmall의 고급 프로젝트 템플릿 (Fecmall/FBBCBase-App-Advanced)을 선택했습니다. 작곡가를 사용하면이 프로세스가 매우 간단하고 효율적입니다. 작곡가는 다음 주소를 통해 배울 수 있습니다. 학습 주소

전자 상거래 웹 사이트를 개발할 때 어려운 문제가 발생했습니다. 사용자에게 개인화 된 제품 권장 사항을 제공하는 방법. 처음에는 간단한 권장 알고리즘을 시도했지만 결과는 이상적이지 않았으며 사용자 만족도에도 영향을 미쳤습니다. 추천 시스템의 정확성과 효율성을 향상시키기 위해보다 전문적인 솔루션을 채택하기로 결정했습니다. 마지막으로 Composer를 통해 Andres-Montanez/Residations-Bundle을 설치하여 문제를 해결했을뿐만 아니라 추천 시스템의 성능을 크게 향상 시켰습니다. 다음 주소를 통해 작곡가를 배울 수 있습니다.

Laravel을 설치하려면 다음 단계를 순서대로 수행하십시오. Composer 설치 (MacOS/Linux 및 Windows) 설치 LARAVEL 설치 프로그램 새 프로젝트 시작 서비스 액세스 애플리케이션 (URL : http://127.0.1:8000) 데이터베이스 연결 (필요한 경우)을 설정하십시오.
