ThinkPHP连接数据库及主从数据库的设置教程,thinkphp主从_PHP教程
ThinkPHP连接数据库及主从数据库的设置教程,thinkphp主从
本文较为详细的讲述了ThinkPHP连接数据库及主从数据库的设置方法,在ThinkPHP项目开发中非常实用。具体实现方法如下:
一、项目根目录上建立config.php
代码如下所示:
<?php if(!defined('THINK_PATH')) exit(); return array( 'DB_TYPE' => 'mysql',// 数据库类型 'DB_HOST' => 'localhost',// 主机 'DB_NAME' => 'aoli',// 数据库名称 'DB_USER' => 'root',// 数据库用户名 'DB_PWD' => '',// 数据库密码 'DB_PREFIX' => '',// 数据表前缀 'DB_CHARSET' => 'utf8',// 网站编码 'DB_PORT' => '3306',// 数据库端口 ); ?>
二、设置项目配置文件
\Home\Conf\config.php文件代码如下:
<?php $arr1=array{ 'URL_MODEL'=>2, //pathinfo访问模式 }; $arr2=include './config.php'; return array_merge($arr1,$arr2); //数组整合 ?>
\Admin\Conf\config.php文件代码如下:
<?php $arr1=array{ 'URL_MODEL'=>1, //普通访问模式 get方式 }; $arr2=include './config.php'; return array_merge($arr1,$arr2); //数组整合 ?>
三、主从数据库设置
该设置比较适合高并发,高负载的大型网站
读者可以到\ThinkPHP\Common\convention.php中查看默认的系统常量设置
config.php文件设置如下:
<?php return array( //'配置项'=>'配置值' //后台 'URL_MODE'=>0, 'DB_TYPE'=>'mysql', 'DB_HOST'=>'localhost,192.168.1.2',//两台数据库服务器 'DB_PORT'=>'3306', 'DB_NAME'=>'thinkphptest',//如果数据库名相同,不用定义多个,如果不相同与服务器依次对应 'DB_USER'=>'root', 'DB_PWD'=>'password', //表前缀 'DB_PREFIX'=>'think_', //接下来配置主从数据库 'DB_DEPLOY_TYPE'=>1,//开启分布式数据库 'DB_RW_SEPARATE'=>ture,//读写分离,默认第一台服务器为写入服务器,其它的只读取不写入 ); ?>
在某个action中读取数据库文件参数:
$hh=C('DB_HOST'); //C可以读取配置文件中的值 $pp=C('DB_PREFIX'); $this->assain('h',$hh); $this->assain('p',$pp); $this->display();
这个action下的tpl:
数据库服务器地址:{$h} 数据库表前缀:{$p}
希望本文所述方法对大家的ThinkPHP程序设计能有所帮助。
据我所知 。可以设置多个数据库,,但是没有你这么设置的。。。。
多看帮助文档对你有帮助。,帮助文档上面应该有这个多数据库的设置。。
ThinkPHP中如何连接数据库操作数据库之前,我们要建立一个Model。在说Model和Action之前,先交代一下Model和Action的保存位置。Model保存在 程序目录中lib/Model文件夹中,Action保存在程序目录中lib/Action文件夹中。ThinkPHP系统默认的Model规则是这样子 的:Model文件文明名类似“Model类名+Model.class.php,并且Model默认的操作数据库表名字为我们在config.php中 定义的DB_PREFIX+Model类名,Model类名和文件名需要大写”在Model文件中,定义一个类,扩展Model类,一般写法如下class 类名Model extends Model{}那么,现在我们来定义一个Model吧。由于我们数据库表名称为cms_article,class ArticleModel extends Model{}文件保存为ArticleModel.class.php。什么都不用写,一个Model已经定义完成了。那么现在,我们继续我们的Action知识吧。Action和Model很多的规则很接近,不同的是Action不直接操作数据库,而是需要通过Model对数据库进行操作。现在我们来定义一个Action来完成操作。class IndexAction extends Action{function index(){$Article = D(”Article”);}}将文件保存为IndexAction.class.php。OK,现在我们刷新一下首页,如果没有任何的提示,那么恭喜你,数据库连接Model、 Action定义都是正常的。Action中D方法就是调用Model,Article就是我们刚刚定义的那个 ArticleModel.class.php中的Model类~也就是说在定义Model的同时,我们已经完成了对数据库的连接和对数据库表操作的准 备~

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

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

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

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

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

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

뜨거운 주제











ThinkPHP 프로젝트를 실행하려면 다음이 필요합니다: Composer를 설치하고, 프로젝트 디렉터리를 입력하고 php bin/console을 실행하고, 시작 페이지를 보려면 http://localhost:8000을 방문하세요.

ThinkPHP에는 다양한 PHP 버전용으로 설계된 여러 버전이 있습니다. 메이저 버전에는 3.2, 5.0, 5.1, 6.0이 포함되며, 마이너 버전은 버그를 수정하고 새로운 기능을 제공하는 데 사용됩니다. 최신 안정 버전은 ThinkPHP 6.0.16입니다. 버전을 선택할 때 PHP 버전, 기능 요구 사항 및 커뮤니티 지원을 고려하십시오. 최상의 성능과 지원을 위해서는 최신 안정 버전을 사용하는 것이 좋습니다.

ThinkPHP Framework를 로컬에서 실행하는 단계: ThinkPHP Framework를 로컬 디렉터리에 다운로드하고 압축을 풉니다. ThinkPHP 루트 디렉터리를 가리키는 가상 호스트(선택 사항)를 만듭니다. 데이터베이스 연결 매개변수를 구성합니다. 웹 서버를 시작합니다. ThinkPHP 애플리케이션을 초기화합니다. ThinkPHP 애플리케이션 URL에 접속하여 실행하세요.

ThinkPHP 설치 단계: PHP, Composer 및 MySQL 환경을 준비합니다. Composer를 사용하여 프로젝트를 만듭니다. ThinkPHP 프레임워크와 종속성을 설치합니다. 데이터베이스 연결을 구성합니다. 애플리케이션 코드를 생성합니다. 애플리케이션을 실행하고 http://localhost:8000을 방문하세요.

ThinkPHP는 캐싱 메커니즘, 코드 최적화, 병렬 처리 및 데이터베이스 최적화와 같은 장점을 갖춘 고성능 PHP 프레임워크입니다. 공식 성능 테스트에 따르면 초당 10,000개 이상의 요청을 처리할 수 있으며 JD.com, Ctrip과 같은 대규모 웹 사이트 및 엔터프라이즈 시스템에서 실제 응용 프로그램으로 널리 사용됩니다.

MySQLi를 사용하여 PHP에서 데이터베이스 연결을 설정하는 방법: MySQLi 확장 포함(require_once) 연결 함수 생성(functionconnect_to_db) 연결 함수 호출($conn=connect_to_db()) 쿼리 실행($result=$conn->query()) 닫기 연결( $conn->close())

Hibernate 다형성 매핑은 상속된 클래스를 데이터베이스에 매핑할 수 있으며 다음 매핑 유형을 제공합니다. Join-subclass: 상위 클래스의 모든 열을 포함하여 하위 클래스에 대한 별도의 테이블을 생성합니다. 클래스별 테이블: 하위 클래스별 열만 포함하는 하위 클래스에 대한 별도의 테이블을 만듭니다. Union-subclass: Joined-subclass와 유사하지만 상위 클래스 테이블이 모든 하위 클래스 열을 통합합니다.

Apple의 최신 iOS18, iPadOS18 및 macOS Sequoia 시스템 릴리스에는 사진 애플리케이션에 중요한 기능이 추가되었습니다. 이 기능은 사용자가 다양한 이유로 손실되거나 손상된 사진과 비디오를 쉽게 복구할 수 있도록 설계되었습니다. 새로운 기능에는 사진 앱의 도구 섹션에 '복구됨'이라는 앨범이 도입되었습니다. 이 앨범은 사용자가 기기에 사진 라이브러리에 포함되지 않은 사진이나 비디오를 가지고 있을 때 자동으로 나타납니다. "복구된" 앨범의 출현은 데이터베이스 손상으로 인해 손실된 사진과 비디오, 사진 라이브러리에 올바르게 저장되지 않은 카메라 응용 프로그램 또는 사진 라이브러리를 관리하는 타사 응용 프로그램에 대한 솔루션을 제공합니다. 사용자는 몇 가지 간단한 단계만 거치면 됩니다.
