浅尝PHP项目

项目地址(求star): https://github.com/genglintong/market
项目背景: 软件工程的一个课程作业,主要是简单的增删改查,适合入门。
准备工作:需要安装好php环境,mysql数据库,nginx服务器

开始

  • clone代码到本地
# 需要安装git命令
git clone https://github.com/genglintong/marke
# 进入后端模块,前端模块暂时不用管
cd market/market/market
屏幕快照 2018-03-21 下午7.24.40.png
  • thinkphp 框架了解
    thinkphp是一个简单的,免费的,开源的轻量级php WEB开发框架
    www WEB部署目录(或者子目录)
    ├─index.php 入口文件
    ├─README.md README文件
    ├─Application 应用目录
    ├─Public 资源文件目录
    └─ThinkPHP 框架目录
  • MVC
    MVC即model(模型),view(视图),controller(控制器),它是即是一种框架,也是一种思想。
    model:程序各个对象的具体逻辑实现
    View:主要是界面展示类
    Controller:对请求进行处理,调用各个模型类的方法。
    浅谈MVC模式
    MVC设计模式
    菜鸟教程
  • 项目搭建
#修改nginx.conf
cd nginx.conf 配置目录
vi nginx.conf
屏幕快照 2018-03-21 下午7.50.47.png

修改服务器root目录为项目目录(nginx 操作方法,apache类似),修改端口(也可以不修改,我这里是添加了一个端口的监听)。

#  重启nginx 使配置生效
sudo nginx -s reload

访问 http://localhost:8090/
成功则如下图

屏幕快照 2018-03-21 下午7.57.59.png

浅尝PHP项目

  • 访问流程
    首先我们知道服务器在接收用户请求时会去根目录(就就是我们上面配置文件的目录,默认www,我们修改为了market),然后服务器会找index文件访问。
    这时,我们看目录下文件,会发现又一个index.php, 这个文件是整个项目的入口文件。
// 检测PHP环境
if(version_compare(PHP_VERSION,'5.3.0','<'))  die('require PHP > 5.3.0 !');

// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',True);

// 定义应用目录
define('APP_PATH','./Application/');

// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';

这个文件就是一些功能的配置,其中定义应用目录定义的目录为整个项目的项目代码所在目录。
然后它会根据我们访问的URL,去寻找到对应的控制器。(默认是index)
其实我们访问的第一个URL是这样子的(加上默认信息)
http://localhost:8090/index.php/Home/index/index
即访问 Application/Home 模块的 Controller下,index控制器的index方法。
thinkphp路由

#代码如下
    /**
     * 搜索接口
     * @param number $pn  pagenum  默认为0
     * @param string $type  类型   为空则表示不按照类型展示
     * @param string $title  按照title模糊搜索  为空则表示不按照标题搜索
     * @param number $price  0  不按照价格搜索   -1  从低到高   -2  从高到低    >0   表示大于$title的商品
     * @param number $vol  0  不按照余量搜索   1  从低到高   2  从高到低
     */
    public function searchGoods($pn = 0,$type = "",$title = "",$price = 0,$vol = 0){
        //实例化  Goods
        // 框架封装的model层
        $Goods = M('Goods');

        $fields = array();
        $order = array();

        //$fields['pn'] = $pn;

        if ($type != ""){
            $fields['type'] = array('eq',$type);
        }
        ........
        // 根据上述条件拼接成sql
        $data = $Goods->where($fields)->order($order)->limit($pn*10,10)->getField('id,title,price,overplus,intro,user_id,type,img');
        //获取前一条执行的SQL
        $sql = $Goods->getLastSql();

        //echo $sql;
        $serchData['sql'] = $sql;
        $serchData['data'] = $data;

        //输出信息
        $this->ajaxReturn($serchData);
    }
接口输出信息
  • 数据库信息配置
    数据库信息配置在Conf/Config.php中
    框架会自动读取配置,连接数据库。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,718评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,683评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,207评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,755评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,862评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,050评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,136评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,882评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,330评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,651评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,789评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,477评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,135评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,864评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,099评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,598评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,697评论 2 351

推荐阅读更多精彩内容

  • 安装ruby 安装sass $ gem install sass如果出现permitted问题通常是权限问题,先尝...
    天蚕阅读 9,015评论 2 5
  • 有这样一个传说,说是秦皇岛是秦始皇出身的地方,在秦皇岛有一个小山,上面有一个老人的手很大可以看到有手指头的印记,有...
    大碗给地平线打叉阅读 194评论 0 0