최근에 스울에 대해 알아보고 있어서 생각을 적어보겠습니다. Swoole을 기반으로 한 오픈 소스 프레임워크는 Baidu에서 찾을 수 있습니다. 웹 소켓과 소비자 대기열을 사용하는 경우 Swoole 기반 프레임워크를 선택하는 것이 좋습니다. 더 이상 고민하지 않고 Wu Daxian이 swoole
추천(무료): swoole
swoole은 두 부분으로 구성됩니다. 하나는 핵심인 C로 개발된 PHP 확장입니다. 다른 하나는 PHP 코드로 작성된 Yii, TP, Laravel과 같은 프레임워크입니다.
Swoole 확장 자체는 웹 서버 기능을 제공하며 php-fpm을 대체할 수 있습니다. 그리고 Swoole 프레임워크만 사용하면 다른 PHP 프레임워크처럼 nignx, Apache 등의 웹 서버에서 실행할 수 있습니다.
Swoole 프레임워크는 PHP 프레임워크와 같은 웹 개발에 적합합니다. Swoole 확장은 http뿐만 아니라 UDP, TCP 및 기타 프로토콜을 사용할 수 있는 하위 수준 서버 통신 메커니즘을 제공합니다.
Swoole 확장은 다른 PHP 확장과 마찬가지로 설치 방법도 다릅니다. pecl을 사용하거나 컴파일하여 설치할 수 있습니다. Swoole 프레임워크는 Composer를 통해 도입한 후 설치하거나, 소스 코드를 다운로드한 후 수동으로 포함/요구할 수 있습니다.
또한 swoole 프레임워크는 swoole 확장에 의존하며 swoole 확장의 적용 예입니다.
Framework-Swoole Extension-Swoole Document Center http://wiki.swoole.com/wiki/page/p-framework.html
swoole Extension은 Swoole Extension을 기반으로 다양한 프레임워크를 만들 수 있으며, 단지 웹 프레임워크가 아닙니다.
프레임워크는 고유한 인터페이스 개체 메커니즘을 채택합니다.
프레임워크 호출의 첫 번째 단계인 require('config.php');는 먼저 config.php를 포함해야 하며 그런 다음 $php 개체가 생성됩니다. Controller, Model 또는 View에 있는 경우 $this->swoole을 통해 호출하세요. 함수나 다른 포함된 프로그램에 있는 경우 전역 $php를 통해 참조됩니다.
$php->db | 데이터베이스 인터페이스 |
$php->cache | 캐시 시스템 인터페이스 |
$php->tpl | 스마트 템플릿 엔진 인터페이스 |
$php->model | Model 객체 인터페이스 호출 |
$php->mvc | MVC 구조 데이터 |
$php->plugin | 플러그인 시스템 인터페이스 |
<?php /* 导入config.php文件,这是调用框架必须的第一步 config.php会载入基本配置选项,和基本函数,并生成全局接口变量$php 在代码的任何位置处,都可以通过global $php来引用全局接口对象 */ require('config.php'); $res = $php->db->query('select * from test_table'); //执行SQL语句,得到一个查询的结果,查询结果,可以获取数据 $res->fetch(); //获取单条数据。是字段-值,组成的关联数组。 $res->fetchall(); //获取全部 $data = array(); $data['title'] = 'hello wolrd!'; $data['author'] = 'me'; $php->db->insert($data,'test_table'); //将关联数组按照键值对应转为字段-值对应,插入到数据库表test_table中。 //insert into test_table(title,author) values('hello wolrd!','me') /* $php->db->delete() 删除数据 $php->db->update() 更新数据 具体请参考Database类 */ /* 模板操作,内置smarty模板引擎 */ $php->tpl->assign('title','hello world!'); $php->tpl->display('index.html'); ?>
루트 디렉터리가 $ROOT라고 가정합니다.
$ROOT/apps
$ROOT /apps: 애플리케이션 코드, 이 디렉터리의 코드는 클래스, 구성, 템플릿, 컨트롤러, 모델 등을 포함하여 공개됩니다. js, css, jpg, html 등과 같은 정적 파일은 모두 .php 파일이어야 합니다. 이 디렉토리는 직접적인 http 액세스를 허용하지 않습니다.
Ø $ROOT/apps/controllers 웹 애플리케이션 컨트롤러 클래스 코드
Ø $ROOT/apps/models 데이터 모델 캡슐화 클래스 코드
Ø $php->config[ 'db를 통한 $ROOT/apps/configs 구성 파일 ']['master']
Ø ROOT/apps/classes 클래스 라이브러리에 액세스합니다. 모든 사용자 정의 클래스는 psr-0 사양을 준수해야 합니다. php, 최상위 네임스페이스는 App
Ø $ROOT/apps/templates 템플릿 파일 디렉터리
²여야 합니다. 네임스페이스: 예를 들어 새 AppHelloTest 클래스는 $ROOT/apps/classes/Hello/Test에 매핑됩니다. php
² 구성 파일: $php->config['db']['master'] 또는 Swoole::getInstance()->config['db']['master']와 같은 파일은 다음에 매핑됩니다. $ROOT/apps/configs/db .php 파일의 경우 db.php에 배열이 반환되어야 하며 키는 master입니다.
² 데이터 모델: model('UserInfo') 또는 $php->model->UserInfo는 $ROOT/apps/models/UserInfo.php
$ROOT/static
정적 파일 디렉토리에 매핑됩니다. js, css, jpg, html 등
$ROOT/index.php
웹사이트의 단일 항목 파일은 루트 디렉터리에 직접 배치할 수도 있고, $ROOT/webroot/index.php
$와 같이 별도의 저장 디렉터리를 생성할 수도 있습니다. ROOT/server.php
서버 프로그램 포털을 시작합니다.
swoole의 MVC 관리를 사용하면 컨트롤러 클래스는 다음 사양을 준수해야 합니다.
² 코드는 appscontrollers 디렉터리에 있습니다.
² 클래스 이름의 첫 글자는 대문자여야 합니다.
² SwooleController
에서 상속됩니다.위 내용은 3분 안에 Swoole 프레임워크를 배울 수 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!