数据库是编程的核心内容,在使用php做网站的过程中,固然要与数据库打交道,那么在php中,怎样来创建一个数据库呢?下面我们就一起来了解一下吧。
1、创建一个函数
我在这里是作为演示实例,所以没有用框架,用的是原生的,打开编辑器,新建一个文件,然后再文件里面,先新建一个函数,这里命名是create_data,接下来我们将在这个函数里面来写php怎样创建一个数据库?
2、登陆信息
要想创建数据库或者是对数据库的其他操作,都必须先连接数据库,先设置好用户名,主机名,密码这三个变量:
$Username="root";
$Password="";
$servernmae="localhost";
3、连接数据库
登陆信息创建好之后,我们就来连接数据库了,我这里使用的是mysqli的连接方式:
$connect=new mysqli($servernmae,$Username,$Password);
4、创建数据库
如果数据库连接成功的话,我们就开始创建数据库,创建数据库的sql语句格式是“create database +要创建的数据库名”,例子如下:
$sql="create database ceshi";
然后是执行这个sql语句:
if($connect->query($sql)){
echo "successful!";
}
else{
echo $connect->error;
}
5、访问测试。
开启本地的服务器和mysql服务器,然后在浏览器中输入刚才那个文件的地址进行访问,结果如下:
完整代码如下:
function create_data(){
$Username="root";
$Password="";
$servernmae="localhost";
$connect=new mysqli($servernmae,$Username,$Password);
if($connect){
$sql="create database ceshi";
if($connect->query($sql)){
echo "successful!";
}
else{
echo $connect->error;
}
}
}
create_data();
之前写了篇文章介绍php操作mysql有网友给小编留言说现在都流行的是mysqli链接数据库。小编今天介绍一下php操作mysqli的常见语法。
和mysql有比较多类似的地方。我们先看看mysqli怎么连接数据库。
我们先定义几个常量,数据库账户,数据库密码,还有要连接的数据库。
php怎么操作mysqli然后运行一下代码,查看是否得到需要的数据
mysqli查询结果这里我们可以看到基本操作很简单。类似mysql实例化$mysqli=new Mysqli(HOST,USER,PWD,DB);就可以了
我们看看常见的语法
mysqli_result类我们可以都试试看得出什么数据,方便在自己项目中运用到
$row=$result->fetch_row();
//$row=$result->fetch_array();
//$row=$result->fetch_assoc();
//$row=$result->fetch_object();
//释放结果集
$result->free();
//$result->free_result();
//$result->close();
//关闭连接
$mysqli->close();
然后释放资源,关闭连接。是不是也没那么难呢
引言
我们已经习惯在框架里编写类库接口,使用面向对象的方式构建规模以上的应用程序。但是还有很多机会,时时刻刻与PHP数组打交道。
PHP版本迭代并加入的对象操作特性非常丰富。今天我们来说一说最基础的PHP空对象,怎么使用,以及注意事项。
学习时间
如果是数组,我们可能这样存储数据:
$aVal = array(); $aVal[key1][var1] = "something"; $aVal[key1][var2] = "something else";
那么有没有办法像下面这样操作数据呢?
(object)$oVal = ""; $oVal->key1->var1 = "something"; $oVal->key1->var2 = "something else";
当然了,这个是伪代码。PHP中自带了 stdClass 对象,声明空对象使用下面的方法:
$x = new stdClass();
stdClass是默认的PHP对象。stdClass没有属性,方法或父级。它不支持魔术方法,并且不实现任何接口。
当将标量或数组转换为Object时,将获得stdClass的实例。只要需要通用对象实例,就可以使用stdClass。
创建 stdClass 的示例,可以使用下面的任意方式:
$x = new stdClass; $y = (object) null; // 同上 $z = (object) 'a'; // 创建属性 'scalar' = 'a' $a = (object) array('property1' => 1, 'property2' => 'b');
你需要格外注意:
stdClass不是基类! PHP类不会自动从任何类继承。 所有类都是独立的,除非它们显式扩展了另一个类。 在这方面,PHP与许多面向对象的语言不同。
你无法在代码中定义名为“ stdClass”的类。 该名称已被系统使用。 你可以定义一个名为“Object”的类。也可以定义一个扩展stdClass的类,但不会获得任何好处,因为stdClass不执行任何操作。
再举一个例子:
class CTest {public $property1; } $t = new CTest; var_dump($t instanceof stdClass); // falsevar_dump(is_subclass_of($t, 'stdClass')); // false echo get_class($t) . "\n"; // 'CTest' echo get_parent_class($t) . "\n"; // false (no parent)
注意,PHP的类是独立存在的,上面的 CTest 类也绝不是继承自 stdClass 对象。
写在最后
通过本文,你应该收获一个重要的概念,那就是,PHP 的类除非手动严格指定继承类,否则都是独立存在的。
同时,PHP 提供了标准的 stdClass 对象用于构建空对象。操作数据时可以不用像数组那样了。但是,抛开数组,你讲很大程序上享受不到PHP带来的数据操作便利。
Happy coding :_)
我是 @程序员小助手 ,持续分享编程知识,欢迎关注。
redis是Key-Value的数据库,并提供多种语言的API,其中支付的数据类型包括了string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。
是缓存在服务器内存中的,并不像是普通的数据库,存放在物理硬盘上面。
redis的好处有1、速度快,因为数据存在内存中;2、支持丰富数据类型,一共支持五种数据类型;3、支持事务,操作都是原子性,所谓的原子性其实就是对数据的更改中要么是全部执行的,要么是全部不执行的;4、丰富的特性:可用于缓存上,也可以用于设置session上,key值可按key设置过期时间,过期后将会自动删除,并不需要手动删除。
既然你已经在服务器中安装了redis了,那你怎么用PHP来操作redis呢?把数据保存到redis中。
首先,你需要下载一个redis扩展,也就是stable版(稳定版)扩展。
你可以到到pecl.php.net 搜索redis 下载扩展。
1.下载完文件之后,解压了它。
tar-zxvf redis-2.2.5.tgz
这样就解压成功了
2.执行/php/path/bin/phpize,或许你的php路径不是这个,你可以搜索一下(可以使用 find / -name phpize),这个命令的作用是用来检测PHP的内核版本的,并且为扩展生成了相对应的编译配置
3. [root@localhost redis-2.2.5]#./configure --with-php-config= /usr/bin/php-config
执行上面的命令,如果你不知道你的php-config在哪,可以用find / -name php-config查找一下在哪。
4.执行 [root@localhost redis-2.2.5]# make && make install 就可以开始安装redis扩展了。
安装成功之后,你就可以看到你的redis扩展放到哪里了。
5.开始修改php.ini
添加
Extension=你刚才安装的redis的扩展位置,例如/usr/local/php5.6/lib/redis.so
6.随便编辑一个文件,输出一下 phpinfo();这个方法,查看扩展是否安装完成。
7.然后你就可以开始使用redis了
<?php
$redis=new redis();
$redis->set('test','qqq');
echo $redis->get('test');
输出:
qqq
事实证明,只要你安装成功了redis扩展,之后,你就可以用php操作redis了。不论是读取还是设置,更是可以通过php设置redis的key的生存时间。
本次的安装redis扩展是通过编译安装的,安装的方法有很多种,只要你能够安装成功,那你就可以通过php操作redis了。
当然你也可以通过一些论坛来学习更多的方法。
php常量有哪些特点?
常量是一个简单的标识符,可以简单理解为“不变的量”在程序运行时不会被修改(其实这个概念是不准确的)。在程序运行过程中常量一旦被定义不能修改或者取消定义,它的作用域是全局的,常量可以再脚本任何地方访问它。常量和变量都是php中的存储单元,其实在实际运行中,常量的值和地址值是会发生变化的,所以常量不能严格理解为‘运行过程中不变的量’描述,今天主要讨论不是常量的概念,这一点了解即可,不必太过于纠结。
常量的定义和使用
在php中常量和变量的声明方式不一样,常量是用define()函数函数来定义常量,常量的命名和变量相似,要遵循php的命名标准,常量和变量命名最大不同是
常量默认对大小写敏感(区分大小写)但是一般常量书写都是大写的字母,不要在常量前加上“$”符号,这是与变量明显的区别。define()命名格式如下:
define()函数使用注意事项:
1、设定后常量值无法更改
2、常量名不要开头的美元符号“$”
3、作用域不影响常量访问.
4、常量值只能是字符串或数字.
php预定义常量
在php中,除了我们自己可以定义常量外,系统为我们提供了强大的一系列系统常量供我们使用,我们可以利用系统预定义常量完成一些特殊功能,这些系统预定义常量需要不同的扩展库定义的,系统只有加载了这些扩展库才会出现。预定义变量的开头决定了不同的类型,有些常量会根据他们使用位置而发生改变,需要需要的是系统预定义常量通常是不区分大小写。常见的预定义变量如图:
关于php中变量今天先给大家聊到这,大家有什么好的想法咱们可以一块讨论下!
一、起因
偶然看到群上的一个截图,得,php又凉凉了?无奈长叹一口气,诸位看官且往下看。
如图:
大家也都看到了,这次php凉凉的原因是因为马蜂窝裁员,换php为java,所以php就又要凉了?
二、为何要换java
虽然不想承认,但是不得不说java确实更适合大项目一些,不管是从安全性还是架构扩展多线程,确实是比我们php强一些。但是,我们从刚入行听的最多的一句话就是:php是最好的语言,你以为是开玩笑呢,小老弟。不过相对而且确实java的面向对象要更广一些
1、马蜂窝有多大
首先要声明从未用过马蜂窝的任何服务,也没安装过马蜂窝APP。不过既然这次的事儿和马蜂窝有关,那咱们就大概百度百度。
1.中国年轻一代用得更多的旅游网站
2.上亿旅行者共同打造的"旅行神器"
3.60,000 多个全球旅游目的地
4.600,000 个细分目的地新玩法
5.60,000,000 次攻略下载
6.38,000 家旅游产品供应商
这是从官网上看到的,大概分析来看,用户不说1亿也得有个8000W吧,这个用户量加上各种配套服务,数据量级已经是相当大了。OK,到此我们明确了,这是家大公司,数据量也增长到了一定程度,这个数据量对php来说确实是有点过了。
2、为什么换php
首先根据新闻,我们看到的是裁员的裁。其次是裁掉40%的员工,换php为java。根据我们第一条的分析,按照这家大公司的数据量,用php确实是有些捉襟见肘了,随着业务的递增,换php为java似乎也情有可原,至于裁员的部分,咱就不在这儿讨论了。
但是从这件事我们也能看到,在创业之初 ,是什么语言支撑起这上亿级的数据量!是什么语言支撑起快速发展的业务!是什么语言让马蜂窝的迭代速度跟上市场发展!是什么语言!答案呼之即出,没错,是php,是php的敏捷开发让这样一个从此从创业过渡到了现在的大公司!
三、php真的凉凉了吗
1、中小型公司的首选语言
要说现在中小型公司的首选语言,我相信仍然是php,因为php的快速开发快速迭代早已深入人心。可能说到这里,会有不少其他语言从业者来反驳博主。是,你们java稳扎稳打,能抗能输出,有大将之风。是,你们python人生苦短,不如python。是,你们go母族势大,服务器领域拔尖。但是那又能如何,论web开发,我php依然谁都不服。
2、定位不同
就像上面说的,各种语言定位不同。马蜂窝换php无非是业务庞大,需要换成java来迎接新一轮的业务爆发,但这并不是意味着php就凉凉了,我们phper从一开始就知道自己的定位,马蜂窝的裁员不但没有证明php凉凉,然而证明了php的不凡之处。因为php也曾经支撑起了这个创业公司从小走到大,现在的裁员只能说是功成名就,光荣退役,只是可惜一众同僚!此处希望各位同僚早日振作起来!
3、未来可期
看到这个标题的时候,也不禁一阵恍惚。近几年来唱衰php的越来越多,工作招聘岗位上也少了不少,只是php真的凉凉了吗?
了解php的同学都知道,在前段时间php刚出了里程版本7.4,新增了许多特性,性能优化也是重中之重。其次就是php8.0,号称是整个php界的大事!从5.5到现在的7.4,php性能提升不知道多少,前辈们都在为php无私奉献,php的应用场景将会不仅仅局限于中小型业务,总有一天大型业务也会有我们的一席之地!
PHP7性能的蜕变(性能提升4倍)
PHP 7.4的新增特性(功能,弃用,速度)
四、总结
本文是分享一名,php从业者所写的,作为分享者,看到这名PHPer的文章,可能他的举例或者缺乏权威性,但是作为软件开发编程语言,哪有那么容易衰竭,目前这些编程语言各自有各自擅长的地方,也都有不擅长的地方。
不管你是什么编程语言的程序员, 愿各位能在编程的路上越走越远,坚定信心,查漏补缺,身体倍儿棒,吃嘛嘛香!如果有看到这篇文章想要学习或者更详细了解的可以给我留言哦。编程语言相关的资料也可以发送给你看看
php数组的定义
数组就是值类型相同的变量的集合,在PHP中的一种常用的复合数据类型,数据可以存放很多的数据,可以存储任何类型的数据。我们可以把变量当做一个包含值得盒子,那么可以把数组当做当成一个带有隔层的盒子,每一层都可以存放一个值。
数组中的元素是什么?
在数组中每一个值叫做数组的元素。也可以在方括号使用索引添加新元素,或者把新的值赋给已知数组元素。
$myarray[3]=‘four’;
数组的创建方法
PHP中,创建数组最简单的办法是使用array命令如下:
$myarray=array(‘one’,2,‘three’);
这段代码是创建了一个叫$my array的数组,它包含了三个值:‘one’,2,‘three’,在这个数组中第一个和第三个包含了字符串,而第二个包含了一个数字。
要想访问数组中的值,你需要知道其索引。数组通常使用的数字作为指向所包含的的值索引,索引一般从0开始,数组第一个值得索引是0,以此类推数组第n个元素的索引为n-1,一般是数组变量名放置方括号,把索引放到括号内,获取这个值
$myarray[0]的值是‘one’,$myarray[1]的值是‘2’、$myarray[2]的值是‘three’
php中可以使用多种方法构造一个数组,除了用array()函数外,也可以用一定数量的逗号分隔的key=>value参数对构造数组。
$myarray=array("one"=>"1","two"=>"2","three"=>"3");
PHP数组php中的数组的分类
数值数组(带有数字 ID 键的数组)
比如说
$cars[0]="red";
$cars[1]="blue";
$cars[2]="white";
关联数组 (带有指定的键的数组,每个键关联一个值)
比如:$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
多维数组 (2个数组以上的数组)
二维数组:
$cars = array ( array("小明",“男”,10), array("小红",“女”,11), );
今天关于php数组先介绍到这,如果有什么好的想法可以一块讨论下!
一些初学者可能还不知道怎么搭建php环境,笔者就遇到很多小白,前台,后台混不清是什么。为什么需要后台,添加文章的原理是什么。
php环境今天笔者就介绍一下怎么搭建php环境,让本地运行调试代码。有两种途径,一个是单独安装,还有个就是安装集成包。笔者今天要介绍的就是用集成环境,笔者觉得这样的效率比较高。虽然从安全性方面,单独安全的安全性更好。感兴趣的朋友可以去试试。
wamp集成包一般笔者安装的是wamp或者phpstudy都是一键式安装。默认数据库的密码是空或者123456,然后把代码放在wamp里面www的目录。通过127.0.0.1或者localhost后面跟上你的文件夹路径就可以访问调试了。
一般服务器环境是linux或者window。liunx的安全性更好,同样的配置linux的效率也高一些。对于网站安全要求比较高的可以去研究一下liunx系统。
linux在使用过程中遇到问题欢迎留言咨询。
PHP连接mysql数据库是PHP新手们必须要掌握的一项技能,只要掌握了PHP对数据库进行增删改查等操作,就可以写出一些简单且常见的程序。如留言表,新闻页等。本篇文章主要给大家详细介绍PHP连接Mysql数据库的两种常用方法。
下面我们通过具体的代码示例来给大家详细介绍两种PHP连接mysql数据库的方法。
mysqli连接数据库和pdo连接数据库。
第一种方法:使用mysqli连接mysql数据库
代码实例如下:
<?php
$host='127.0.0.1';
$user='root';
$password='root';
$dbName='php';
$link=new mysqli($host,$user,$password,$dbName);
if ($link->connect_error){
die("连接失败:".$link->connect_error);
}
$sql="select * from admins";
$res=$link->query($sql);
$data=$res->fetch_all();
var_dump($data);
在经过一系列的连接操作后,我们再创建一个sql语句对其中数据表进行查询检验。在上述代码中,我们要先创建一些需要用到的变量,如数据库用户名、数据库名密码等。然后我们用面向对象的方式连接了名为php的数据库。再通过if条件语句,connect-error方法判断PHP连接数据库是否成功。
这里我们先登录phpmyadmin看看是否存在php数据库,从下图可以知道是存在php这个数据库的。
最后通过浏览器访问,结果如下图:
从图中可以得知,我们成功地连接了php数据库,并且能查询出数据表信息。
第二种方法:使用PDO连接数据库
代码示例如下:
<?php
$host='127.0.0.1';
$user='root';
$password='root';
$dbName='php';
$pdo=new PDO("mysql:host=$host;dbname=$dbName",$user,$password);
$sql="select * from admins";
$data=$pdo->query($sql)->fetch();
var_dump($data);
PHP连接Mysql步骤以上就是关于PHP连接数据库查询数据的两种常用方法详解,更多相关教程请访问php中文网mysql视频教程,欢迎参考学习!
做网站大家首先想到的就是要怎么写代码,选择PHP还是asp,或者Java等语言,还有数据库使用MySQL、oracle还是access等等,其实完全没有那个担心,很多的个人站长并不会写代码,这是事实。只要掌握网站建设的基本方法,对于各种类型的开源网站系统都可以轻松驾驭,做出漂亮的网站。
01了解开源网站系统
开源网站系统就是开放源代码的意思,所有的代码均没有被加密,你可以任意修改,直到满足你的功能未知;开源系统一般不允许二次发布或销售,你自己使用,随便你怎么改都可以,但是不能把你改好的进行销售或再一次发布。
现在90%以上的开源网站系统使用的是PHP语言开发,主要是PHP免费,MySQL数据库也免费,PHP运行速度快等特点,一般情况下,网站语言选择PHP的就行。部分开源系统会有购买授权这一要求,个人仍然是可以免费使用的,如果是公司使用可以根据实际情况购买授权,比如你的网站已经稳定运营了,建议购买,如果是刚开始或者运营不稳定,暂缓购买授权也行(不买也可以,只不过为了减少不必要的麻烦买一个授权更放心)。
常用的开源网站系统,均为PHP+MySQL
dedecms:开源用来搭建资讯类,个人博客,企业网站,图片站,商品展示,商城,分类信息站等,功能强大,不可多得的内容管理系统,有授权,不买也可以使用;简单易学,入门很快。
discuz:简称DZ,做论坛就用他了,你现在看到的论坛网站几乎都是discuz系统搭建的,还可以用来搭建门户网站,dz应用中有很多的插件,能够实现分类信息、地方门户,商城网站,分销等很多功能;模板设计稍微复杂,只要稍加学习即可搞定。
WordPress:国外的一款使用很广泛的博客系统,可以用于搭建个人博客和企业网站。
还有很多不太知名的开源网站系统,如果不知道可以百度搜索。
02本地测试环境介绍
想要使用任何一款开源的网站系统,总是需要先在本地电脑上测试一下,所以配置一个完整的PHP环境就必不可少了,但是PHP环境的搭建优点复杂,于是有了很多的本地集成PHP环境软件,现在比较流行的有PHPstudy,PHPenv及wampserver等,大家可以百度搜索下载安装。
先将PHP集成环境在本地电脑上安装好,再去下载相应的网站源码,在集成环境上安装即可进行测试。
03模板制作或选择免费模板
开源网站系统都有一个共同的特点:模板是通用的。你可以去下载免费的模板直接使用,有条件的话也可以花钱购买一些付费的模板,直接套用就行。
如果是自己设计模板,需要懂得css和HTML相关的代码才行,这个是必须的基础,没有别的办法;其实也有简单的方法,可以去下载一些免费的模板,进行适当的修改即可成为自己的模板。很多仿站就是这么弄得,把别人的css和js文件下载下来,再进行标签套用即可。
04网站上线运营
将我们制作好的网站上线运营,需要购买服务器,可以根据自身的条件选择购买虚拟主机或是独立服务器,要是小型网站,使用虚拟空间就可以了,这个在购买的时候资讯空间商就行。
剩下的就是填充网站内容,优化和推广,获得用户或进行商品销售。网站设计制作是不是也很简单,只要会,一周上线一个网站其实是很容易的,想那些专门卖模板的网站,一套模板稍微修改一下就可以用于另一个网站,一天上线几个网站都可以。