php开发_php开发工具 - CSDN
精华内容
参与话题
  • 如何用PHP完整的开发一个网站?

    千次阅读 2018-12-26 09:53:38
    1、PHPer应具备的知识 (1)PHP知识: 熟练掌握基础函数,PHP语句(条件、循环),...手头收藏一些好的常用类或方法,能提高我们的开发的速度。如:分页、上传、字符过滤、数据库操作、生成HTML、文件操作等。 (2)...

    在这里插入图片描述
    1、PHPer应具备的知识

    (1)PHP知识:

    熟练掌握基础函数,PHP语句(条件、循环),数组(排序、读取),函数(内部 构造),运算(数学 逻辑),面向对象(继承 接口 封装 多态静态属性)等。

    了解Cookie或者Session一种机制

    了解一种模板操作机制和使用

    手头收藏一些好的常用类或方法,能提高我们的开发的速度。如:分页、上传、字符过滤、数据库操作、生成HTML、文件操作等。

    (2)HTML知识

    (3)JavaScript事件处理

    (4)数据库知识:SQL语句“增删改查” 会使用一种SQL工具

    2、PHP开发的一般流程

    如何用PHP开发一个完整的网站

    (1)尽量完整的需求方案,具体到功能上:

    (2)建模结构UML

    (3)建立数据库

    1、建立的表名、字段名要与他的功能有关系。

    2、根据结构建立数据库表,原则是不定项内容一定要分表。

    3、字段类型要考虑内容是否够用就够就好,选择适合的类型INT Varchar Date

    (4)设计HTML文件和脚本的实现

    根据模和数据库来设计页面是个很科学的方法,当然有的时候有人喜欢根据模型设计页面,数据库基于页面设计,都是可以的。

    设计页面时要考虑到每个细节,包括提示消息页面,错误页面。

    (5)PHP网站源码的书写

    1、先建立底层结构和文件夹(如果是大型的网站同样设计一个文件UMML)

    2、基础功能分类关联,以便今后代码引用。

    3、代码的书写,注意简洁性和函数的使用,内部函数能实现的尽量使用内部函数。

    4、在部分关键位置加以代码注释。

    (6)程序的测试和修正

    1、对于发现的BUG不能就解决BUG而解决,要处于完整程序考虑。避免收之东隅收之桑榆。

    2、对于解决过的BUG已经要详细记录,以便日后更新。
    3、多人开发应该注意什么

    使用版本服务器:CVS、SVN…

    功能:

    1、单个文件历史版本的记录和恢复

    2、文件的锁定和更新

    3、单个或多个文件程序之间的沟通

    4、保护程序的安全性不受单个程序的误操作而丢失
    文章来自:https://www.itjmd.com/news/show-4315.html

    展开全文
  • PHP常用开发工具

    万次阅读 2020-06-02 08:34:24
    NetBeans是一款免费并且功能强大的PHP IDE,它支持多语言,包括英语、日语、俄语、葡萄牙语和简体中文。 它支持主流的框架,例如Zend、Doctrine、Smarty和Symfony2,通过laravel-ide-helper还可以支持Laravel。它...

    1. NetBeans

    NetBeans是一款功能强大的PHP IDE,它支持多语言,包括英语、日语、俄语、葡萄牙语和简体中文。

    它支持主流的框架,例如Zend、Doctrine、Smarty和Symfony2,通过laravel-ide-helper还可以支持Laravel。它同时还支持其他框架包括Yii、CakePHP、FuelPHP和Wordpress

    一些关键的功能使得NetBeans处在IDE的前列,比如get\set方法自动生成、代码模板、代码自动补全、智能提示、快速修复和重构。其他基本的功能包括代码折叠和格式化,try/catch自动完成和矩形选择等等。

    如果你要调试,你可以在本地或者线上轻易的使用命令行或者xDebug进行调试。Web开发当中还包括了许多JavaScript,HTML和CSS文件,NetBeans都支持对这些文件的IDE。所有的这些特点使得NetBeans成为了鲁棒的开源PHP IDE。

    下一个NetBeans版本将在2016年的8月发行,届时会全面支持PHP7,你可以在NetBeans的官网下载到当前版本-netbeans.org

    2. PHPStorm

    PHPStorm是一款功能强劲的PHP IDE。(IntelliJ IDEA 安装php插件后也可以作为PHP IDE)

    PHPStorm支持多种主流框架,例如Symfony,Zend,Yii,CakePHP,Laravel。主流的CMS框架支持Druoal,Magento和Wordpress等。 

    PHPStrorm的最大亮点就是对前端语言支持的很好,它支持包括CSS,Sass,HTML5,CoffeeScript,JavaScript,Stylus,Less等等,并且对些前端语言都集成了代码重构、调试和单元测试的功能。

    作为一个开发工具,PHPStrom集成了版本控释系统,数据库,composer,线上部署,REST客户端以及命令行工具等等各种功能。

    在本地或者线上你都可以通过Zend Debugger Xdebug来调试程序。.

    你可以点击下载PHPStorm。

    官网下载地址:https://www.jetbrains.com/phpstorm/download/#section=windows

    3. Sublime Text 3 / PHP IDE

    Sublime Text 3是一款轻量级、功能丰富并且支持多平台的编辑器。它主要依靠插件和包来扩展功能。

    在网上有许多免费的PHP插件让Sublime变成了一个优雅的PHP IDE。这包括:包管理、Sublime PHP companion、xDebug客户端、PHPCS,、CodIntel、 Simple PHPUnit和PHPDoc。

    Sublime官方地址 - sublimetext.com.

    4. Eclipse PDT

    Eclipse PDT是另一款开源的编辑器

    相比于PHPStorm和Zend Studio,Eclipse PDT的最大优势在于不需要注册许可证便可使用。如果你是一个老的Eclipse爱好者,那么使用它你会感到无比的亲切。

    Eclipse PDT拥有语法高亮、代码辅助、代码格式化、重构、代码模板、代码导航、PHP调试、语法验证等等功能。

    Eclipse PDT支持MAC、Windows和Linux平台 - eclipse.org/pdt/

    5. VIM

    VIM是一款基于GPL许可证的开源编辑器,它的下载和使用都是免费的。在开发者当中VIM拥有相当高的人气。Facebook的工程师们在使用Hack之前,就是使用VIM编写PHP程序。

    VIM是一款模块化、轻量级的编辑器,并且如果你喜欢只是用键盘编程,那它再适合不过你了。

    在Linux上,VIM可能是*适合的编辑器。和Sublime类似,它需要插件才能变成一款PHP IDE。

    更多参见- vim.org.

    6. Zend Studio

    Zend Studio是一款来自Zend公司旗下的一款经典PHP IDE。

    Zend Studio支持Windows、OSX和Linux平台,并且支持PHP7。它有许多特性,包括 -

    • 对于PHP代码的验证、检索和搜索有更快的表现。
    • 整合了Zend Debugger,Xdebug和Z-Ray调试
    • 支持Eclipse的插件生态系统。
    • 支持Docker和Git Flow.
    • 支持PHP,JavaScript,CSS,HTML智能编程。
    • 支持Microsoft Azure 和 Amazon AWS部署。
    • 协助PHP7友好迁移并且对Zend服务器无缝整合。

    Zend一个强大并且有趣的特点就是支持基于PHP后端服务的移动APP开发。

     Zend Studio for PHP.

    7. Atom

    Atom是一很“潮”的编辑器。

    Atom是一款高度定制化的编辑器,并且支持Windows、OS X、Debian Linux (Ubuntu)、 Red Hat Linux和Fedora 22+平台。

    要想让Atom成为一个PHP的IDE,你需要下载很多扩展包。比如: hyperclick-php, php-cs-fixer, php-integrator-base, linter-php, atom-autocomplete-php等等。这有一份你可能需要安装的列表 -https://atom.io/packages/search?q=php.

    点击访问更多 - atom.io.

    8. PHPED

    NuSphere公司旗下的PHPED也是一款历史悠久的编辑器。

    *新版本的PHPED已经支持PHP7并且包含了Laravel、Yii、Symfony等框架,并且提供类似Joomla和Wordpress的内容管理系统。*新版本的特性就是加入了可在本地和远程的单元测试功能。

    总的来说PHPER是一款全栈开发者的开发工具,它提供了JavaScript的调试以及LESS的和CSS的预处理,当然还有你所需要的PHP的一切东西。

    但是不得不说的是,我认为在客户支持、文档和版本管理方面来说,Zend和PHPStorm比PHPED更好。

    点击这里查看更多- nusphere.com.

    9. PHP Designer

    PHP Designer是另一款比较好的IDE,它给PHP,JavaScript,CSS和HTML提供快速开发的工具。这款IDE仅可在Windows上使用,所以如果你是Mac或者Linux用户就略过吧。

    点击查看更多 - PHP Designer.

    10. Cloud 9

    Cloud 9 是一款面向几乎所有编程语言的云IDE。在PHP支持方面,他支持实时代码调试功能。

    Cloud 9提供免费的工作空间和私人工作空间,但是要想获取更多功能,你就需要付费试用了。

    点击赶紧试试- cloud9.

    总结

    无论试用哪款IDE,它的目的都是帮助你更好更快的PHP程序,选择适合你的那个就好!

    展开全文
  • 电商网站集Web前端与后台开发于一体,开发一个电商网站既要兼顾Web页面的布局与美化,又要处理各种复杂的逻辑关系,还要对各种数据进行增删改查,对于初学者来说学习起来难难难!但是,现在只需你来和强哥任性一把,...
  • 提供了一个PHP正式迁移+Laravel环境搭建的建议和意见。

    1.找到Git在个人用户目录下 .ssh 文件夹里的公钥

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project$ cd ~


    Administrator@DESKTOP-VM6Q616 MINGW64 ~$ ls -al
    total 23212
    drwxr-xr-x 1 Administrator 197121 0 9月 5 09:24 ./
    drwxr-xr-x 1 Administrator 197121 0 5月 24 13:14 ../
    drwxr-xr-x 1 Administrator 197121 0 7月 11 20:36

    ——


    Administrator@DESKTOP-VM6Q616 MINGW64 ~/.ssh$ cat id_rsa.pubssh-rsa


    AAAA???zaC1yc2EAAAADAQABAAACAQC+zl8WRLZBDSUW6TZ82zq68aYCywB5y7FdK/rsswuq16FUhcRap6pxJH2DcorNkddqEWrlmJARtpU1pGZWWXl7FXoVhthcR1rGo8TIxot2tCCcNtu43GmF4V31Ivizr9silgEXjEw+uklHUnrpuvF/nFtQUC4l3bkatl4RKx4Xv0OFlc0/wElZLhhCyYLd6iTvjd7pUDSeoLKq5BuREiLyI19YfqwpPnSJBVc67Ktex+QQrwr7dOKea1sEgAyT9vAs31dl3p1vpAExg5OjEC97LyXFiXLH/e/sBNj6r4p0u/nh1VGBwFvC/RuJsKQeRxsFMg9yRm9e0CIRhHzJF4VfqZxTPzPIL3JYrodTh+tBvXt8CmI6zhOMMDJ+s4bOreOQbBaDP4cHrRcDRakcKxdTrmzAb+s539pA+V0Fo8MWuO4yF9T1kLSzYx55ifHAK8ZvypIAwDj7LwpcelBzXb7+WhG35ogUgWTv2zThGQihUUqOZXMUCFuPtgMkAvG+Gk28pfmYPwIF/ENZ7iCFvwoEHR0h6tbFZu/DUGAvhXwrE9zEEqxMsC4iPdtmZO4R7fSCSXKygQdTWFERq6u1tBxfsiKmo3gEJnXK9crf2Myhj/TU9jeEztCYappJjHMpJI5QfWPaK1J2Digq9lobHN69Hw6HNLu3tfJ3JyR50h4d0Q== 36??48?09@qq.com
    Administrator@DESKTOP-VM6Q616 MINGW64 ~/.ssh$


    标准的从零开始,生成SSH密钥和公钥,并进行配置的方法:

    在ubuntu系统上生成SSH密钥,并把对应的公开密钥添加到GitHub账户


    这篇文章里面写的非常详细。好好读读,会有收获的。

    2.clone项目到本地

    git clone xxxxxx:xxxxx/xxxxx

    注意

    在 git clone 之前,需要把自己的 id_rsa.pub 文件的公钥文本内容
    复制给管理服务器的同事。用以添加自己当前这台机器的权限。

    3.输入自己预先设置的密码

    4.安装composer

    路飞

    fun getSomeThing():Int{
    
    }




    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project
    $ git clone git@???.???.0.23:/data/git/www.c??t??t??.com.git

    Cloning into ‘www.c??t??t??.com’…
    The authenticity of host ‘???.???.0.23 (???.???.0.23)’ can’t be established.
    ECDSA key fingerprint is SHA256:Zf24oXg2Rnc49iOgYyOqoCJzVtWKe3kXJzrX77Tp/cE.
    Are you sure you want to continue connecting (yes/no)?
    y
    Please type ‘yes’ or ‘no’:
    yes
    Warning: Permanently added ‘???.???.0.23’ (ECDSA) to the list of known hosts.
    Enter passphrase for key ‘/c/Users/Administrator/.ssh/id_rsa’:

    remote:
    Counting objects: 3693, done.
    remote:
    Compressing objects: 100% (2774/2774), done.
    remote:
    Total 3693 (delta 2675), reused 1282 (delta 875)
    Receiving objects: 100% (3693/3693), 525.91 KiB | 0 bytes/s, done.
    Resolving deltas: 100% (2675/2675), done.
    Checking out files: 100% (259/259), done.

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project
    $ ls
    www.c??t??t??.com/

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project
    $ cd www.c??t??t??.com/

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project/www.c??t??t??.com (master)
    $ ls

    aliyun/
    bootstrap/
    config/
    package.json
    readme
    tests/app/
    composer.json
    database/
    phpunit.xml
    resources/
    v1testartisan*
    composer.lock
    gulpfile.js
    public/ server.php
    v2

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project/www.contestia.com (master)
    $ composer –version
    bash: composer: command not found

    Administrator@DESKTOP-VM6Q616 MINGW64 /


    PHP Composer 中文网

    http://www.phpcomposer.com/

    按照官网教程

    如果是用 Linux系统的话,可能会非常便捷。
    在第1处方法就可成功:





    成功时的显示如下:

    root@kali:~/PhpstormProjects/Business/www.contestia.com#
    $curl -sS https://getcomposer.org/installer | php


    All settings correct for using Composer
    Downloading…


    Composer (version 1.5.2) successfully installed to:
    /root/PhpstormProjects/Business/www.contestia.com/composer.phar
    Use it: php composer.phar








    在使用 Win 10 环境进行安装时,则可能会出现如下若干情况:


    第一次

    PS F:\Php Language Not Thread Safe> php -r “readfile(‘https://getcomposer.org/installer‘);” | php


    php : 无法将“php”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。所在位置 行:1 字符: 1
    + php -r “readfile(‘https://getcomposer.org/installer‘);” | php+ ~~~ + CategoryInfo : ObjectNotFound: (php:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException

    第二次

    PS F:\Php Language Not Thread Safe> .\php -r “readfile(‘https://getcomposer.org/installer‘);” | .\phpPHP


    Warning: readfile(): Unable to find the wrapper “https” - did you forget to enable it when you configured PHP?


    PHP Warning: readfile(https://getcomposer.org/installer): failed to open stream: Invalid argument
    in Command line code on line 1


    Warning: readfile(): Unable to find the wrapper “https” - did you forget to enable it when you configured PHP?
    in Command line code on line 1


    Warning: readfile(https://getcomposer.org/installer): failed to open stream: Invalid argument
    in Command line code on line 1


    第三次

    注意: 如果收到 readfile 错误提示,请使用 http 链接或者在 php.ini 中开启 php_openssl.dll 。


    5.如果提示php 命令找不到

    那么需要添加


    类似于


    F:/php


    F:/php/ext


    进系统的环境变量


    系统环境变量
    变量名:PHPRC (环境配置)


    变量值:F:/php (找到php.ini 文件的父路径)

    6.composer这句话

    在 composer.phar 同级目录下新建文件 composer.bat :


    C:\bin>echo @php “%~dp0composer.phar” %*>composer.bat


    上面这句话的意思,


    其实是指,直接在命令行,输入


    echo @php “%~dp0composer.phar” %*>composer.bat




    这样子就会自动生成一个 composer.bat文件。


    (要注意的是,C:\bin 对应的就是 ———— 你存放composer.phar的路径。因人而异。)


    注意:以上的情况,在没有配置全局环境变量的情况下, 需要先在 PHP 的 composer.phar 文件所在目录下,
    调用命令行,




    才能看到代表Composer这一步成功的版本效果


    F:\Php Language Not Thread Safe>composer -v

    以下是 命令 和 展示效果图

    命令
    F:\Php Language Not Thread Safe>composer -v


    展示效果图
    ______
    / _/ _ _ _ __ _
    / / / _ \/ _ `_ \/ _ \/ _ \/ / _ \/ _/
    / // // / / / / / / // / // ( ) __/ /
    ____/____// // // ./__/_/_//
    /_/
    Composer version 1.5.1 2017-08-09 16:07:22

    7.为composer 配置全局变量

    参见此篇文章


    http://www.cnblogs.com/liaozt/p/5976306.html


    特地强调,是在 Windows 而非 Linux 之下的特殊方法。


    关键段落:
    # !/usr/bin/env sh


    php /path/to/composer.phar $*
    php dirname $0/composer.phar $*

    记得注释掉下面一行,然后
    中间第二行 改为绝对路径
    (并且绝对路径如果是带空格的情况 , 则应该把整串路径用 双引号 包裹起来)

    8.进入到项目地址。

    建议:先更新Composer源,为中国区的PHPComposer国内的镜像源。

    不然更新极容易出错。



    出错时的情景如下:
    [Composer\Downloader\TransportException]
    Content-Length mismatch, received 0 bytes out of the expected 154


    解决方案链接: Content-Length mismatch 问题的示例解决方案

    如果已经将 composer 命令,变为了Command的全局命令(在哪个路径都可以调用)

    方法一:
    可为全局的配置文件,添加这一镜像源的访问。(对任一Composer项目都有效)
    composer config -g repo.packagist composer https://packagist.phpcomposer.com


    方法二:
    需要先进入composer.json文件的所在目录下。执行以下命令
    composer config repo.packagist composer https://packagist.phpcomposer.com


    来为当前这个composer.json文件的末尾添加镜像源的访问地址的信息。(仅对当前文件、当前项目有效)

    添加的信息部分如下:

    "repositories": {
       "packagist": {
           "type": "composer",
           "url": "https://packagist.phpcomposer.com"
       }
    }






    如果Linux 找不到composer命令,无法直接进行调用 composer,那么用以下方法会快捷一点

    方法三、从本地修改composer.json文件,添加镜像源

    这一方法,是采用手动编辑 composer.json 文件的方法,实现修改配置的效果。
    那么需要将以下这段

    "repositories": {
          "packagist": {
                 "type": "composer",
                 "url": "https://packagist.phpcomposer.com"
          }
    }

    手动添加到,你要寻找的 composer.json 里面去。




    该方法已经成功实践过一次。在一台Linux上面,至少对于我是有用的。

    尝试重新自动生成依赖文件(依据你已有的composer.json文件,能不能正常使用)



    此处,假设为能正常使用的情况

    输入 composer install

    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project/www.contestia.com (master)
    $ composer install


    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Your requirements could not be resolved to an installable set of packages.






    此处,假设为不能正常使用的情况

    ——————>去找管理后台系统的同事,去要一个他们配置好的Composer.json


    此时,多半情况下



    会出现以下提示:

    Problem 1
    - laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - Installation request for laravel/framework 5.2.* -> satisfiable by laravel/framework[5.2.41, v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.32, v5.2.33, v5.2.34, v5.2.35, v5.2.36, v5.2.37, v5.2.38, v5.2.39, v5.2.4, v5.2.40, v5.2.42, v5.2.43, v5.2.44, v5.2.45, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    -

    意思是指——>

    PHP的配置中,还有些Laravel将要用到的组件,没有被开启开关(开关关闭——,无法获得组件——Laravel的功能无法实现)。


    在这里,可见到的,也就是 ext-mbstring 这个组件的状态为:is missing



    下面是
    相关的一些建议:

    To enable extensions, verify that they are enabled in your .ini files:
    - F:\Php Language Not Thread Safe\php.ini
    You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.

    然而我们从这个建议中,不能得到直接的解决方案。


    于是,下面我们自主去寻找,看 Laravel的这些依赖的组件的开关在哪里。

    我们将前往,

    PHP语言的文件夹下面,查看PHP的PHP.ini中,这些组件的开关状态(常规模式:

    用注释来释放或者暂时关闭)。


    9.正好第9步,也是讲 Laravel的安装依赖。

    Linux下,查找PHP的PHP.info的步骤如下:

    在Linux下,如何查找 php.ini 文件所在位置


    1、find / -name “php.ini”
    2、写一个测试文件,内容 <?php phpinfo(); ?\> ,在第七八行左右,有“Loaded Configuration File”就标明了php.ini的位置。
    3、没指定php.ini或者找不到php.ini,php会按照默认配置运行的。

    为了将测试和正常的网页浏览分离开,
    我决定下载一个Chrome专门用于测试。


    如何在Kali Linux中安装Google Chrome浏览器

    打开自己写的phpinfo.php时,显示如下错误:

    PHP Interpreter is not configured(configure PHP Interpreter)

    在网上找到了一个完美的解决方案,
    方案如下:



    Ubantu系统下 PHP Interpreter is not configured(configure PHP Interpreter) 问题的完美解决方案



    从phpinfo.php的

    Loaded Configuration File /etc/php/7.0/cgi/php.ini



    中找到了 php.ini 配置文件的所在位置。


    接下来,就是用文本编辑器,进行里面的属性修改。
    extension=php_mbstring.dll
    # 前面的取消注释打开开关,使其生效。

    (此处存在Linux和Windows不同的情况。Linux不用这种方式,详情见 第⑨条 )





    修改完 php.ini 配置文件的属性后,
    需要重新启动一次 PHP 。(实质上,是重新启动 PHP 的服务 Service )


    可以参见这篇文章
    Linux修改php.ini后重启php-fpm的方法

    
    # /etc/init.d/php-fpm restart 
    
    
    # /etc/init.d/php-fpm restart 
    
    
    # /etc/init.d/php-fpm restart 
    


    备注:这里的这个方法,对于 php7.0-fpm 这个文件来说,似乎是无用的。





    在这里,从网上参考到,一篇看上去靠谱的文章
    实际操作之后,效果看上去也是OK的:


    升级配置和重启php-fpm

    $ service php7.0-fpm restart   
    
    # 此时看上去是OK的。
    


    而上文的 php-fpm ,可能出现系统没有自带 php-fpm,而无法找到命令的情况。


    此时,就需要我们手动去搜索 php-fpm 包, 并且手动安装 php-fpm 包。

    
    $ apt-cache search -n php*-*fpm
    
    $ apt-get install php-fpm
    


    PHP的配置文件,可能存在于
    /etc/php/7.0/cli/php.ini
    /etc/php/7.0/cgi/php.ini
    /etc/php/7.0/fpm/php.ini
    /etc/php/7.0/apache2/php.ini
    这4个文件夹下。


    通过分析,其实觉得————> /etc/php/7.0/cli/php.ini 的可能性,是最大的。

    (此处存在Linux和Windows不同的情况。Linux不用这种方式,详情见 第⑨条 )


    发现一个非常大的坑,那就是 Linux 并不是默认自带 “mbstring” 的安装。

    所以,需要手动安装 mbstring :
    $ apt-get install php-mbstring\


    以及后续的其他Pkg:
    php-xml (在报错信息里面,又叫做 dom )


    在安装好 “mbstring” 和 “dom”(又名 php-xml) 之后,
    一切走上了正轨…………


    开始出现了如下信息:

    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Package operations: 75 installs, 0 updates, 0 removals
    - Installing php-curl-class/php-curl-class (2.0.0): Downloading (connecting…Downloading (100%)


    monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server)
    monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required))


    以上都一切正常,
    这些包都安装的差不多后,开始
    进入了 php artisan 的配置阶段————>
    此时产生了这些信息,提示我还有一些隐患存在:

    Illuminate\Foundation\ComposerScripts::postUpdate
    php artisan optimize
    PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php/20151012/php_mbstring.dll’ -
    /usr/lib/php/20151012/php_mbstring.dll: cannot open shared object file: No such file or directory in Unknown on
    line 0
    Generating optimized class loader
    Compiling common classes



    此处已经被我修正了:


    这里进行梳理一下————>
    报错信息:Unable to load dynamic library ‘/usr/lib/php/20151012/php_mbstring.dll


    问题正确解法的链接:How to Fix —— This Fucking Problem


    问题解法的思路:

    错误做法:

    You (or some software you have installed) have enabled something like:
    extension=php_mbstring.dll

    正确做法:

    In the PHP configuration file, and this is wrong as php_mbstring.dll is an extension compiled for Windows
    operating system.

    The correct way is to install php-mbstring package and let it enable the mbstring extension automatically:


    $sudo apt-get install php-mbstring



    如何开关 mbstring 这个 extension :

    You can then disable/enable the extension by using phpenmod/phpdismod commands:


    $ sudo phpdismod mbstring # disable mbstring extension


    $ sudo phpenmod mbstring # enable mbstring extension again


    下面的操作,依次是:
    1.导入——(PHP项目的) .env 环境配置文件
    2.运行 $ php artisan key:generate 指令
    3.运行 $ php artisan serv 指令


    (artisan 是 Laravel 的一个子工具集。通过 PHP —— 调用 Laravel 的 artisan 工具集 —— 调用key:generate指令(或 serv指令))


    ⑩①

    草稿丢了。
    此处指向的是
    storage/framework下的
    sessions views cache 三个文件夹缺失的情况。
    报的两个错误,分别是 directory not found
    以及 valid cache


    然后,在stackFlow上找到的文章为:

    How to Fix Please provide a valid cache path in Laravel


    草稿被CSDN弄丢了。真的没心情写了。
    分别一个个创建即可。


    ⑩②

    在完成成 第⑩①步 之后,可以看到最终的效果了。

    FINAL_RESULT

    恭喜你,勇士。你做到了!

    恭喜你,勇士。你丢草稿了!

    恭喜你,勇士。你虽然丢了草稿,但还是耐着性子写完了!





    10.windows系统下,在 nginx 下,loaded configuration file 为 none 的问题

    以下是 phpinfo.php 这个PHP内置网页的信息

    PhpInfo.php
    PHP logo
    PHP Version 5.6.31
    System Windows NT DESKTOP-VM6Q616 10.0 build 15063 (Windows 10) AMD64
    Build Date Jul 5 2017 22:19:48
    Compiler MSVC11 (Visual C++ 2012)
    Architecture x64
    Configure Command cscript /nologo configure.js “–enable-snapshot-build” “–enable-debug-pack” “–disable-zts” “–disable-isapi” “–disable-nsapi” “–without-mssql” “–without-pdo-mssql” “–without-pi3web” “–with-pdo-oci=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared” “–with-oci8-12c=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared” “–with-enchant=shared” “–enable-object-out-dir=../obj/” “–enable-com-dotnet=shared” “–with-mcrypt=static” “–without-analyzer” “–with-pgo”
    Server API CGI/FastCGI
    Virtual Directory Support disabled
    Configuration File (php.ini) Path C:\WINDOWS
    Loaded Configuration File (none)




    windows系统下,


    在 nginx 下,




    loaded configuration file 为 none 的问题




    【搜索】https://www.baidu.com/s?wd=loaded%20configuration%20file%20none%20nginx%20windows&rsv_spt=1&rsv_iqid=0xe9161bf10001b120&issp=1&f=3&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_enter=1&inputT=1788&rsv_t=cbd18yH%2Bpc8TGmidsjptVeRnBQ89AEhB9wEg9cJzE852Iwa%2Bh0PpLHvwupjkgDD2xctu&rsv_sug3=5&oq=loaded%2520configuration%2520file%2520none%2520nginx&rsv_pq=bc6b78300000ac23&rsv_sug2=0&prefixsug=loaded%2520configuration%2520file%2520none%2520nginx%2520windows&rsp=0&rsv_sug4=2146






    然后,网上的大神,给出了问题的原因


    【解答:原因在于——>目录有空格】
    http://cache.baiducontent.com/c?m=9d78d513d99d1cfc0ebac2690d67863b4500db367b9783532489cf5f93150f1a1931f4bb567e4d5884d27c165dfa1200a0e7360372587ce1c68dc95e9afbcc2775ce6176671df55c0f8347f29e5125b671d10cb5b81990e6a7748ee4898f9a030f9e045e67d3b0cd01514a9d72a64377b0fdc709085812bce93467f959&p=882a9645d7df12a05abcc329504b83&newp=c2769a4792d807c308e2977e0c49bb231610db2151d3d101298ffe0cc4241a1a1a3aecbf21251b02d3c5776501a94a5bedf03778310034f1f689df08d2ecce7e6b936158&user=baidu&fm=sc&query=loaded+configuration+file+none+nginx+windows&qid=c8c892980000aad0&p1=1&fast=y


    以下,是我采用的
    解决办法:

    1.修改掉PHP语言包所处目录内、名称内,出现的空格。


    2.修改配套的PHP . ini 配置文件。


    完成。




    11.继续安装 Laravel


    a. 下载前,先添加中国区镜像【参见Composer官网的说明】


    b.在 PHP . ini 文件中放开 mbstring 依赖的注释(#)


    c.在 PHP . ini 文件中放开 ext-fileinfo 依赖的注释(#)


    d.有一个 gd库, 好像暂时没有(加入PhpInfo.php的列表信息中), 先放在一边(不去管它), (等到将来如果) 报错了再来 (进行修复和添加)



    12.复制已有的项目的另一份配置文件过来

    形如下面

    序号 配置信息
    1 APP_ENV=local
    2 APP_DEBUG=true
    3 APP_KEY=base64:Qk+9QoIXaVtgYKHm0BM3myf7/CghaMtaPigJihTbEMk=
    4 APP_URL=http://localhost
    5
    6 DB_CONNECTION=mysql
    7 DB_HOST=192.168.0.23
    8 DB_PORT=3306
    9 DB_DATABASE=contest_server
    10 DB_USERNAME=dev
    11 DB_PASSWORD=devall@lbd2015
    12
    13 CACHE_DRIVER=file
    14 SESSION_DRIVER=file
    15 QUEUE_DRIVER=database
    16
    17 REDIS_HOST=127.0.0.1
    18 REDIS_PASSWORD=null
    19 REDIS_PORT=6379
    20
    21 MAIL_DRIVER=smtp
    22 MAIL_HOST=mailtrap.io
    23 MAIL_PORT=2525
    24 MAIL_USERNAME=null
    25 MAIL_PASSWORD=null
    26 MAIL_ENCRYPTION=null
    27
    28 API_DOMAIN=app.contestia.com
    29 API_PREFIX=null
    30 API_VERSION=v1
    31 API_DEFAULT_FORMAT=json
    32 API_DEBUG=true




    创建一个


    .env
    文件,


    将以上文件载入。


    就可以作为新的 PHP Project 配置文件。

    13.输入laravel的key命令



    php artisan key:generate(中间是个冒号 : )


    作用就是:调用 php artisan 这个工具集,里面的 key:generate 指令。


    附注:


    (php artisan list 可以查看Laravel的常用命令集)




    14.当Laravel的一些依赖,安装好之后



    在安装好Laravel的基本环境后,


    运行
    php artisan serv ,指令




    这个时候,会出现一行域名




    形如:




    Administrator@DESKTOP-VM6Q616 MINGW64 /e/Project/www.contestia.com (master)
    $ php artisan serv


    ?[32m Laravel development server started on http://localhost:8000/ ?[39m




    中间的一串:
    Laravel development server started on http://localhost:8000/
    ————>就是正式的域名。



    两侧的


    ?[32m 和 ?[39m
    这个是:


    laravel php artisan 乱码【出现的原因】
    https://segmentfault.com/q/1010000007146764

    这些类似于 [37;41m 的玩意是
    Unix Console Color Codes,用于在控制台里显示颜色的代
    码:http://bitmote.com/index.php?…



    然而你用的是不支持这种颜色代码的 cmd,自然就会这样。


    (以上的这些,只是在显示上,有一定的区别。不影响实际功能。)



    于是我们,开始将上面那一串域名


    Laravel development server started on http://localhost:8000/


    填入到浏览器中。————————



    15.此时,浏览器可能会报错:类似于找不到文件、 找不到文件夹这种



    此时,浏览器可能会报错


    类似于找不到文件


    找不到文件夹这种。


    大体上是
    上半部分(指网页中的上半部分列表)
    下半部分(指网页中的下半部分列表)两个错误。


    然后我们就应该——————



    a.

    进入storage子文件夹。


    $ cd storage/

    b.

    创建framework (丢失的文件夹)


    $ mkdir framework

    c.

    创建framework / sessions (丢失的二级文件夹)


    $ mkdir framework/sessions

    d.

    创建 framework / views (丢失的二级文件夹)


    $ mkdir framework / views

    e.

    创建 framework / cache (丢失的二级文件夹)


    $ mkdir framework / cache


    f.

    最后,还需要给予这些新建的文件夹,对应的Linux文件系统权限。(Git Bash 在Windows下,也可以用类似Linux的方式,操作文件权限等指令)


    $ chmod -R 755 storage/


    chmod —— change mode
    -R 代表 递归的意思


    755 rwx r-x r-x 三组权限——User,Group,Other


    16.此时,需要保持 命令行的 $ php artisan serv 开启。



    此时,需要保持


    在命令行的
    $ php artisan serv 开启。




    (作用是:在后台维持一个运行)


    然后


    在浏览器输入刚才的网址





    Laravel development server started on


    实际指向地址:htttp://localhost:8000/



    如果一切正常,那么就可以看到

    Hello World !


    17.然后,接下来要做的, 就是修改 nginx 的虚拟域名

    然后,接下来要做的,


    就是


    修改

    nginx 的虚拟域名了,

    起个简单好记的域名吧 !






    展开全文
  • 搭建PHP开发环境(Apache+PHP+MySQL)

    万次阅读 多人点赞 2018-06-25 10:25:32
    简介:总结在Windows环境搭建PHP开发环境(Apache+PHP+MySQL) 安装Apache 1、下载Apache,地址:http://www.apachelounge.com/download/,如下图: 2、解压压缩包,最好放到磁盘根目录,不然配置时容易报路径...

    简介:总结在Windows环境搭建PHP开发环境(Apache+PHP+MySQL)

    安装Apache

    1、下载Apache,地址:http://www.apachelounge.com/download/,如下图:
    这里写图片描述
    2、解压压缩包,最好放到磁盘根目录,不然配置时容易报路径错误,我这里改了文件夹名,方便以后配置,如下图:
    这里写图片描述

    安装PHP

    1、下载PHP压缩包,地址:https://windows.php.net/download ,我下载的是PHP7.0 Thread Safe 版本,如下图:
    这里写图片描述
    2、解压压缩包,我解压后如下:
    这里写图片描述

    安装MySQL

    1、我安装的MySQL55版本,这里不介绍MySQL的安装方式,大家可以自己去网上搜
    2、MySQL官方下载地址:https://dev.mysql.com/downloads/installer/
    3、MySQL默认安装目录如下:
    这里写图片描述

    配置MySQL

    1、打卡环境变量页面
    具体操作如下:我的电脑-右键-属性-高级系统设置-环境变量
    2、新建MYSQL_HOME变量,值为MySQL的安装路径,如下图:
    这里写图片描述
    3、编辑path系统变量,将%MYSQL_HOME%\bin添加到path变量最后面
    4、启动MySQL,命令行输入:start mysqld,如下图:
    这里写图片描述

    配置PHP

    1、打开PHP的安装目录将php.ini-development先复制一份,然后把php.ini-development改为php.ini保存
    2、打开php.ini修改配置,查找; extension_dir = “ext” ,改为extension_dir = “ext的目录” ,比如 extension_dir = “D:\软件\php7\ext”,如下图:
    这里写图片描述
    3、打开几个常用的扩展,例如:查到extension=php_mysqli.dll,去掉前面的分号。打开下图中的这几个库:
    这里写图片描述

    配置Apache

    1、打开Apache的安装目录,找到conf文件夹下的httpd.conf文件并打开
    2、找到“Define SRVROOT”这一项,将后面引号内的值改为Apache的安装目录,如下图:
    这里写图片描述
    3、文件的末尾添加对PHP的支持及PHP的安装路径,如下图:
    这里写图片描述
    代码如下:

    # php7 support
    LoadModule php7_module "D:/软件/php7/php7apache2_4.dll"
    AddType application/x-httpd-php .php .html .htm
    
    # configure the path to php.ini
    PHPIniDir "D:/软件/php7"

    启动Apache服务

    1、设置环境变量
    右键我的电脑,属性->高级,找到最下面的环境变量按钮,选中当前用户的PATH变量,编辑新建以下条目:
    D:\Apache24\bin
    D:\软件\php7
    D:\软件\php7\ext
    2、安装apache服务
    以管理员身份打开命令行,执行httpd.exe -k install
    3、启动服务
    找到apache的安装目录下的bin文件夹,双击ApacheMonitor.exe,双击之后apache就开启了。
    可以在任务栏选择下图图标,右键打开Apache Service Monitor窗口,进行Apache服务的管理
    这里写图片描述
    4、此时在浏览器地址栏输入localhost,回车后就会出现apache的界面,如下图:
    这里写图片描述
    5、接下来在 Apache安装目录/htdocs的目录下新建一个phpinfo.php文件,内容为:

    <?php
    phpinfo();
    ?>

    保存后,在浏览器输入127.0.0.1/phpinfo.php,回车,出现关于PHP的版本信息,如下图:
    这里写图片描述

    至此php环境搭建完成,可以将php文件放入htdocs文件夹中运行了

    踩到的坑

    1、浏览器输入对应PHP地址后,无法解析php
    解决:在命令行输入httpd -t,可以查看是不是Apache的启动问题,如下图:
    这里写图片描述
    可以看到,报错信息是说找不到PHP安装目录下的php7apache2_4.dll文件,通过网上查后我下载的PHP版本不对,应该下载Thread safe 版本。

    展开全文
  • PHP开发常见功能实现流程

    万次阅读 2018-08-15 07:45:51
    一、pc端网站登录   1、获取并过滤用户提交的用户名和密码以及验证码 2、验证用户提交验证码和session中的验证码是否一致 3、验证用户名是否存在 4、根据用户名获取密码,并校验密码是否一致 ...
  • php开发

    2018-05-30 21:11:33
    环境:Win10软件:phpstudy安装phpstudy(百度安装即可)1.删除根目录的index.php(或重命名为index.php.bak),允许目录列表显示目录。
  • PHP开发APP接口实现--基本篇

    千次阅读 2019-02-25 13:26:48
    最近一段时间一直在做APP接口,总结一下APP接口开发以来的心得,与大家分享: 1. 客户端/服务器接口请求流程: 安卓/IOS客户端 –&gt; PHP接口 –&gt; 服务器端 –&gt; 数据处理 –&gt; 返回值...
  • 几款常用PHP开发工具

    万次阅读 2009-05-16 20:48:00
    几款常用PHP开发工具几款常用PHP开发工具 最近想好好研究一下PHP开发,所以搜罗了一下。找了这么几款开发工具和大家共享。 1、EditPlus 一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo、英文拼字...
  • 那目前MAC下php开发都用哪些工具呢?可能对于php初学者不知道该用哪些或者哪些mac版的php开发工具比较好?php中文网特为PHP开发者推荐几款最好用,最流行的php开发工具!php中文网的同学们可以免费下载使用!   ...
  • 最好用的9个php开发工具推荐

    万次阅读 2018-04-18 10:06:36
    对于PHP开发者,在互联网上有很多可用的开发工具,但对于初学者不知道哪个php开发工具比较好,找到一个合适的PHP开发工具是很难的,需要花费很多的时间精力。所以,今天php中文网就为初学者推荐几个2017年最好用的9...
  • PHP开发APP微信支付接口

    千次阅读 2019-09-10 15:06:50
    PHP开发APP微信支付接口 转载 : 这段时间在给一个iOS应用程序开发一个微信支付接口,之前并没有接触过微信支付,翻阅了一上午的微信开发文档,对其流程做了大致的了解后,便开始着手该接口程序的编写。 编写的...
  • 对于PHP开发者,在互联网上有很多可用的开发工具,但对于初学者不知道哪个php开发工具比较好,找到一个合适的PHP开发工具是很难的,需要花费很多的时间精力。所以,今天站长工具之家(zhanzgj.xiaomil.com)小编就为...
  • 2018记一次面试PHP开发岗笔试题

    万次阅读 2018-04-01 14:49:46
    面试杭州复杂美科技有限公司的PHP开发岗位。以下是这家公司的PHP开发岗的笔试题,笔试题个人看来不是非常难,但是我做的不好。期望对大家有所帮助!!!1.列举你使用过或者接触过的常用缓存技术。 解:全页面静态化...
  • VSCode WEB、PHP开发必备插件一览表
  • 1、准备基础 两天前一大老板,很好的朋友要做给他做一个网站,用PHP开发一个购物网站。没用PHP做过项目,于是从零开始学了学,没深入。好开发不求甚解! 看看基本语法,看一遍w3cSchool的文章。然后边学边做项目。...
  • 楼主毕业近几年都是从事Java开发,但前阵子公司外别的公司合作,并接了个项目,该项目的前期是PHP开发的,后期将逐渐转为Java来开发,但期间的维护,接口的修改都得继续用PHP,没办法啊,由于一下子找不到PHP开发...
  • 如何使用 IntelliJ IDEA 2017 配置PHP开发环境 及项目搭建本文适用于初学者利用 IntelliJ IDEA搭建 PHP 工程及 PHP开发环境,本人也是初学者,在学习中有所心得,特此罗列如下步骤,大神勿喷。 php安装与服务器搭建 ...
  • 搭建Eclipse PHP开发环境

    万次阅读 2010-01-29 22:58:00
    搭建PHP开发环境: 1、准备并安装下列软件: MySQL 5.1.30: http://dev.mysql.com/downloads/。 Apache 2.2.14: http://httpd.apache.org/. 在安装过程中,会出现3个文本框,上面两个输入你的本机IP(如:...
  • 阿里云服务器CentOS系统搭建php开发环境(apache+php+mysql)  最近由于需要做些测试,于是想找个服务器试试,正好阿里云有学生特惠,于是花了9.87元买了一个月的云服务器,然后尝试了下搭建PHP环境,记录一下以供...
1 2 3 4 5 ... 20
收藏数 486,134
精华内容 194,453
关键字:

php开发