Introduction à la méthode de démarrage rapide ThinkPHP5. Télécharger
Adresse de téléchargement : http://www.thinkphp.cn/
Cette fois, en utilisant thinkphp5, j'ai utilisé github pour l'installer.
Github
Projet d'application : https://github.com/top-think/think
Framework de base : https://github.com/top-think/framework
En plus :
Code Cloud :
Projet d'application : https://git.oschina.net/liuIntroduction à la méthode de démarrage rapide ThinkPHP5Introduction à la méthode de démarrage rapide ThinkPHP5st/thinkphp5.git
Core framework : https://git.oschina.net/liuIntroduction à la méthode de démarrage rapide ThinkPHP5Introduction à la méthode de démarrage rapide ThinkPHP5st/ framework .git
Codage :
Projet d'application : https://git.coding.net/liuIntroduction à la méthode de démarrage rapide ThinkPHP5Introduction à la méthode de démarrage rapide ThinkPHP5st/thinkphp5.git
Framework de base : https://git.coding.net/liuIntroduction à la méthode de démarrage rapide ThinkPHP5Introduction à la méthode de démarrage rapide ThinkPHP5st/framework.git
Répertoire téléchargé :
tp5 ├─application 应用目录 ├─extend 扩展类库目录(可定义) ├─public 网站对外访问目录 ├─runtime 运行时目录(可定义) ├─vendor 第三方类库目录(Composer) ├─thinkphp 框架核心目录 ├─build.php 自动生成定义文件(参考) ├─composer.json Composer定义文件 ├─LICENSE.txt 授权说明文件 ├─README.md README 文件 ├─think 命令行工具入口
La structure du répertoire du framework principal est la suivante :
├─thinkphp 框架系统目录 │ ├─lang 语言包目录 │ ├─library 框架核心类库目录 │ │ ├─think think 类库包目录 │ │ └─traits 系统 traits 目录 │ ├─tpl 系统模板目录 │ │ │ ├─.htaccess 用于 apache 的重写 │ ├─.travis.yml CI 定义文件 │ ├─base.php 框架基础文件 │ ├─composer.json composer 定义文件 │ ├─console.php 控制台入口文件 │ ├─convention.php 惯例配置文件 │ ├─helper.php 助手函数文件(可选) │ ├─LICENSE.txt 授权说明文件 │ ├─phpunit.xml 单元测试配置文件 │ ├─README.md README 文件 │ └─start.php 框架引导文件
service apacheIntroduction à la méthode de démarrage rapide ThinkPHP5 start
/var/www/html
Vous verrez la page d'accueil : http://localhost/tp5/public/
Si vous ne souhaitez installer aucun serveur WEB, vous pouvez également utiliser directement le serveur Web fourni avec PHP et exécuter router.php pour exécuter le test.
php -S localhost:8888 router.php
http://localhost:8888
Introduction à la méthode de démarrage rapide ThinkPHP5. Structure des répertoires
├─application 应用目录(可设置) │ ├─index 模块目录(可更改) │ │ ├─config.php 模块配置文件 │ │ ├─common.php 模块公共文件 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ └─view 视图目录 │ │ │ ├─command.php 命令行工具配置文件 │ ├─common.php 应用公共文件 │ ├─config.php 应用配置文件 │ ├─tags.php 应用行为扩展定义文件 │ ├─database.php 数据库配置文件 │ └─route.php 路由配置文件Un module de démonstration par défaut sera généré, comprenant la structure de répertoires suivante :
php think build --module demo<.>
4. Rendu du modèle
├─demo │ ├─controller 控制器目录 │ ├─model 模型目录 │ ├─view 视图目录 │ ├─config.php 模块配置文件 │ └─common.php 模块公共文件 同时也会生成一个默认的 Index 控制器文件。Le premier est le contrôleur :
À l'origine, il renvoyait la page de démarrage, mais maintenant il renvoie bonjour tout le monde. application/index/controller/Index.php
Ensuite on hérite de la classe Controller :
<?phpnamespace app\index\controller;class Index{ public function index() { return &#Introduction à la méthode de démarrage rapide ThinkPHP59;Hello,World!&#Introduction à la méthode de démarrage rapide ThinkPHP59;; } }
On passe un nom de paramètre avec une valeur par défaut à la page.
<?phpnamespace app\index\controller;use think\Controller;//引入Controller类class Index extends Controller{ public function index($name=&#Introduction à la méthode de démarrage rapide ThinkPHP59;world&#Introduction à la méthode de démarrage rapide ThinkPHP59;) { $this->assign(&#Introduction à la méthode de démarrage rapide ThinkPHP59;name&#Introduction à la méthode de démarrage rapide ThinkPHP59;,$name); return $this->fetch(); } }Puis voir :
thinkphph utilise le rendu de modèle. Le modèle est stocké dans le dossier View par défaut. Nous le créons nous-mêmes :
. Créez un répertoire de vue sous le répertoire, créez un répertoire d'index sous le répertoire de vue, puis ajoutez le fichier modèle hello.html, le chemin complet : application/index
view/index/hello.html
Ensuite, nous pouvons accéder :
<html><head><title>hello {$name}</title></head><body> hello {$name}!</body></html>
Ou utilisez le chemin omis :
http://localhost/tp5/public/
5. Accédez à la base de données
Insérez simplement quelques éléments de données supplémentaires ;
Configurez ensuite souscreate table if not exists think_data( id int(8) not null auto_increment primary key, data varchar(Introduction à la méthode de démarrage rapide ThinkPHP555) not null )engine=MyISAM default charset=utf8;:
application/database.php
Modifiez la classe Index sous le contrôleur :
return [ // 数据库类型 &#Introduction à la méthode de démarrage rapide ThinkPHP59;type&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;mysql&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 服务器地址 &#Introduction à la méthode de démarrage rapide ThinkPHP59;hostname&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;Introduction à la méthode de démarrage rapide ThinkPHP5Introduction à la méthode de démarrage rapide ThinkPHP57.0.0.Introduction à la méthode de démarrage rapide ThinkPHP5&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 数据库名 &#Introduction à la méthode de démarrage rapide ThinkPHP59;database&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;test&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 用户名 &#Introduction à la méthode de démarrage rapide ThinkPHP59;username&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;root&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 密码 &#Introduction à la méthode de démarrage rapide ThinkPHP59;password&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 端口 &#Introduction à la méthode de démarrage rapide ThinkPHP59;hostport&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 连接dsn &#Introduction à la méthode de démarrage rapide ThinkPHP59;dsn&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 数据库连接参数 &#Introduction à la méthode de démarrage rapide ThinkPHP59;params&#Introduction à la méthode de démarrage rapide ThinkPHP59; => [], // 数据库编码默认采用utf8 &#Introduction à la méthode de démarrage rapide ThinkPHP59;charset&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;utf8&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 数据库表前缀 &#Introduction à la méthode de démarrage rapide ThinkPHP59;prefix&#Introduction à la méthode de démarrage rapide ThinkPHP59; => &#Introduction à la méthode de démarrage rapide ThinkPHP59;think_&#Introduction à la méthode de démarrage rapide ThinkPHP59;, // 数据库调试模式 &#Introduction à la méthode de démarrage rapide ThinkPHP59;debug&#Introduction à la méthode de démarrage rapide ThinkPHP59; => true,
Créez ensuite un rendu dbtest.html dans le répertoire index sous la vue :
<?phpnamespace app\index\controller;use think\Controller;use think\Db;//引入数据库class Index extends Controller{ public function index($name=&#Introduction à la méthode de démarrage rapide ThinkPHP59;world&#Introduction à la méthode de démarrage rapide ThinkPHP59;) { $this->assign(&#Introduction à la méthode de démarrage rapide ThinkPHP59;name&#Introduction à la méthode de démarrage rapide ThinkPHP59;,$name); return $this->fetch(); } public function dbtest() { $data = Db::name(&#Introduction à la méthode de démarrage rapide ThinkPHP59;data&#Introduction à la méthode de démarrage rapide ThinkPHP59;)->find(); $this->assign(&#Introduction à la méthode de démarrage rapide ThinkPHP59;result&#Introduction à la méthode de démarrage rapide ThinkPHP59;,$data); return $this->fetch(); } }
Visitez simplement
à nouveau.<html><head><title></title></head><body> {$result.id---$result.data}</body></html>
Cet article explique la méthode de démarrage rapide de ThinkPHP5 Pour plus de contenu connexe, veuillez faire attention au site Web chinois de php. http://localhost/tp5/public/index.php/index/index/dbtest
Introduction aux étapes d'utilisation de ThinkPHP
Expliquer les connaissances pertinentes sur le verrouillage de mise à jour (U) et le verrouillage exclusif (X)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Dans PHP, vous pouvez utiliser session_status () ou session_id () pour vérifier si la session a commencé. 1) Utilisez la fonction session_status (). Si php_session_active est retourné, la session a été lancée. 2) Utilisez la fonction session_id (), si une chaîne non vide est renvoyée, la session a été démarrée. Les deux méthodes peuvent vérifier efficacement l'état de session et le choix de la méthode à utiliser dépend de la version PHP et des préférences personnelles.

SessionsaRevitalInWebapplications, en particulier pour le commerce de commerce.

La gestion de l'accès simultané sur la session en PHP peut être effectuée par les méthodes suivantes: 1. Utilisez la base de données pour stocker les données de session, 2. Utilisez Redis ou Memcached, 3. Implémentez une stratégie de verrouillage de session. Ces méthodes aident à garantir la cohérence des données et à améliorer les performances de la concurrence.

PhpSessionShaveSeverallimitations: 1) StorageConstraintsCanleadToperformanceIssues; 2) SecurityVulnerAbilitiesLikeSessionFixationAttackSexist; 3) ScaliabilityShalngingDuetoServer-SpecificStorage; 4) SessionxpirationManagementCanBeproblematic; 5) DatapeSisSis irest;

L'équilibrage de charge affecte la gestion de la session, mais peut être résolu avec la réplication de la session, l'adhérence des sessions et le stockage centralisé de session. 1. Session Replication Copy Données de session entre les serveurs. 2. Session Stickleness dirige les demandes d'utilisateurs vers le même serveur. 3. Le stockage centralisé de session utilise des serveurs indépendants tels que Redis pour stocker les données de session pour assurer le partage de données.

Session BlockingSateChnique utilisétoenSureAuser'sessionremainSexclusiVetoonUseratatime.ITCUCIALFORPREVERSDATACORUPRUPTIONANDSECRYSEURCHEBRESSInMulti-userApplications.SessionLockingisImplementEdUsingServer-SidelockingMechanisms, telasreentrantLockinjj

Les alternatives aux séances PHP comprennent des cookies, une authentification basée sur des jetons, des sessions basées sur la base de données et Redis / Memcached. 1.CooKies Gérer les sessions en stockant des données sur le client, ce qui est simple mais faible en sécurité. 2. L'authentification basée sur le token utilise des jetons pour vérifier les utilisateurs, ce qui est hautement sécurisé mais nécessite une logique supplémentaire. 3.Database basée sur les séances stocke les données dans la base de données, qui a une bonne évolutivité mais peut affecter les performances. 4. redis / memcached utilise un cache distribué pour améliorer les performances et l'évolutivité, mais nécessite une correspondance supplémentaire

SessionHijacking fait référence à un attaquant imitant un utilisateur en obtenant le SessionID de l'utilisateur. Les méthodes de prévention comprennent: 1) le chiffrement de la communication à l'aide de HTTPS; 2) Vérification de la source du sessionID; 3) Utilisation d'un algorithme de génération de sessionID sécurisé; 4) Mise à jour régulière du SessionID.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Adaptateur de serveur SAP NetWeaver pour Eclipse
Intégrez Eclipse au serveur d'applications SAP NetWeaver.

MinGW - GNU minimaliste pour Windows
Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !
