在Mac 系统下搭建php学习环境(Apache+PHP+MySQL)

作为一名iOS开发人员,经常会遇到后天接口还没开发完成,但是本地又想进行测试的情况,于是开始研究能不能自己学点php简单语法,写一些简单的get,post请求来满足日常测试需求。下面是我从搭建环境到完成get请求过程,简单记录下参考的网址以及自己遇到的坑和解决办法,供大家参考。

一、搭建。

第一件事就是搭建环境,作为一个视命令行为很高大上的开发小白,这一次鼓足勇气在网上不断搜索,完成了本次搭建。这次搭建主要参考网址为:http://www.jb51.net/article/78278.htm。它上面详细记录了搭建过程中的问题,也正是按照他的流程很顺利的完成了搭建。值得注意的有以下几点:

1.当二-1某文本无法编辑时,按照他的说法给了读写权限仍然不能编辑,这时候可以重启下电脑,就ok了。

2.当三-2修改密码时,一直无法正常登陆,这时候我找到了另外一种解决方案,很好地解决了我的问题。链接如下:http://www.jb51.net/article/104429.htm。

二、开发。

当我开始开发时,我选择的开发工具是PHPStorm,下载破解版地址:http://www.sdifen.com/phpstorm20162.html。下载后安装完成可能会遇到你的文件已损坏,这时候可以上网搜索打开电脑隐私设置的允许任何来源的app,就可以了。

三、get请求书写。


当开始写代码时,就可以直接在上文中的info.php中直接修改或者建立新的.php文件来进行代码编辑。创建数据库代码如下:

<?php
$con = mysql_connect("127.0.0.1","root","1213");
if (!$con)
{
    die('Could not connect: ' . mysql_error());
}

// Create database
if (mysql_query("CREATE DATABASE name",$con))
{
    echo "Database created";
}
else
{
    echo "Error creating database: " . mysql_error();
}

// Create table in my_db database
mysql_select_db("name", $con);
$sql = "CREATE TABLE Persons 
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);

mysql_close($con);
?>

然后需要在mySql数据库中查看是否建表成功,成功后需要插入一些数据,之后就可以从中取出完成get请求了。代码如下:

<?php
//php接口的写法,php访问mysql数据库的基本步骤,获取用户

//1 连接数据库服务器:  mysql_connect("服务器名称","用户名","密码");or die("前面语句执行不成功后返回的信息".mysql_error());
//.mysql_error() 这个函数的意思是什么原因导致前面的sql语句执行失败

$conn = mysql_connect("127.0.0.1","root","1213") or die("connect fieled!".mysql_error());

//防止中文乱码
mysql_query("SET NAMES UTF8");

//2 选择数据库: mysql_select_db("数据库的名称[可选的资源号,也就是第一步的变量名 $conn]"),返回值为true / false

$select = mysql_select_db("demo",$conn) or die("select db failed!".mysql_errno());

//3 执行sql语句:mysql_query 可以在php中执行sql语句,先在数据库中执行这个语句,看是否能查出数据来

$sql = "select * from Persons"; //从表t_user中选择
$result = mysql_query($sql);

//4 获取执行结果: mysql_fetch_array(),会返回多行,因此要使用while循环,把返回的$result这个数组,按每次读一行显示
$array = array(); //自定义一个数组,存放数据
$i = 0; //初始数据为 0
while ($row = mysql_fetch_array($result)){
    //从返回到$row中所有的数据中取出需要的字段,并把它储存在数组$array中
    $array[$i]["FirstName"] = $row["FirstName"];
    $array[$i]["LastName"] = $row["LastName"];
    $array[$i]["Age"] = $row["Age"];
    //所有的数据都累加显示
    $i ++;
}

//5 关闭数据库连接:mysql_close(连接到数据库的变量)
mysql_close($conn);

//6 将结果转换为JSON输出到客户端
$json = json_encode(
//array()是组织要显示的数据结构
    array(
        "resultCode"=>200,
        "message"=>"success",
        "data"=>$array
    )
); //转换为JSON
echo ($json); //显示在客户端
?>

这时候打开网页就可以看到数据了。


注意当插入中文数据时有的会报错,解决方案如下:http://blog.csdn.net/yujianxiang666/article/details/51896994。如果本地找不到/etc/my.cnf这个文件,就直接自己写一个这个文件,拷到该目录下,新建表就可以插入中文数据了,亲测有效。


post请求之后我学习了再和大家分享。







发布了37 篇原创文章 · 获赞 27 · 访问量 8万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章