学习了一下php,觉得php用起来有点怪,mysqlli中的li是什么鬼?
一、mysql与mysqli的概念相关:
1、mysql与mysqli都是php方面的函数集,与mysql数据库关联不大。
2、在php5版本之前,一般是用php的mysql函数去驱动mysql数据库的,比如mysql_query()的函数,属于面向过程3、在php5版本以后,增加了mysqli的函数功能,某种意义上讲,它是mysql系统函数的增强版,更稳定更高效更安全,与mysql_query()对应的有mysqli_query(),属于面向对象,用对象的方式操作驱动mysql数据库
二、mysql与mysqli的区别:
1、mysql是非持继连接函数,mysql每次链接都会打开一个连接的进程。
2、mysqli是永远连接函数,mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。
三、mysql与mysqli的用法:
1:mysql(过程方式):
$conn = mysql_connect('localhost', 'user', 'password'); //连接mysql数据库 mysql_select_db('data_base'); //选择数据库 $result = mysql_query('select * from data_base');//第二个可选参数,指定打开的连接 $row = mysql_fetch_row( $result ) ) //只取一行数据 echo $row[0]; //输出第一个字段的值
PS:mysqli以过程式的方式操作,有些函数必须指定资源,比如mysqli_query(资源标识,SQL语句),并且资源标识的参数是放在前面的,而mysql_query(SQL语句,'资源标识')的资源标识是可选的,默认值是上一个打开的连接或资源。
2、mysqli(对象方式):
$conn = new mysqli('localhost', 'user', 'password','data_base'); //要使用new操作符,最后一个参数是直接指定数据库 //假如构造时候不指定,那下一句需要$conn -> select_db('data_base')实现 $result = $conn -> query( 'select * from data_base' ); $row = $result -> fetch_row(); //取一行数据 echo row[0]; //输出第一个字段的值
使用new mysqli('localhost', usenamer', 'password', 'databasename');会报错,提示如下:
Fatal error: Class 'mysqli' not found in ...
一般是mysqli是没有开启的,因为mysqli类不是默认开启的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli编译进去。
四、mysql_connect()与mysqli_connect()
1.使用mysqli,可以把数据库名称当作参数传给mysqli_connect()函数,也可以传递给mysqli的构造函数;
2.如果调用mysqli_query()或mysqli的对象查询query()方法,则连接标识是必需的。
php到底怎么连接access数据库?
con\config.php 中配置如下 ?php return array( APP_DEBUG = true, DB_TYPE=pdo, // 注意DSN的配置针对不同的数据库有所区别 请参考PHP手册PDO类库部分DB_DSN=odbc:driver={microsoft access driver(*.mdb)};dbq=.getcwd().\\Database\\#fbdb.mdb, DB_USEcon\config.php 中配置如下 true,'DB_TYPE'=> 'pdo',// 注意DSN的配置针对不同的数据库有所区别 请参考PHP手册PDO类库部分'DB_DSN'=>"odbc:driver={microsoft access driver(*.mdb)};dbq=".getcwd()."\\Database\\#fbdb.mdb",'DB_USER'=>'root','DB_PWD'=>'','DB_PREFIX'=>'wxz_',);?>其中 需修改的有 "\\Database\\#fbdb.mdb"相对与当前目录下的数据库文件位置,其余的用户名、密码和前缀(“wxz_”)根据情况修改IndexAction.class.php示例代码query("select * from product"); print_r($r); }}ThinkPHP 内置了抽象数据库讵问层,把丌同癿数据库操作封装起来,我们叧需要使用公共癿Db 类迕行操作,而无需针对丌同癿数据库写丌同癿代码和底层实现,Db 类会自劢调用相应癿数据库驱劢来处理。目前癿数据库包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括对PDO 癿支持,如果应用需要使用数据库,必须配置数据库连接信息,数据库癿配置文件有多种定丿方式,不支持ACCESS数据库
如何把PHP转成EXE文件?
你是指将PHP封装成EXE文件,可以不用浏览器执行是吧。PHP拥有PHP-GTK拓展,你可以查下这方面的相关文章。 编写桌面应用程序。对于有着图形界面的桌面应用程序来说,PHP 或许不是一种最好的语言,但是如果用户非常精通 PHP,并且希望在客户端应用程序中使用 PHP 的一些高级特性,可以利用 PHP-GTK 来编写这些程序。用这种方法,还可以编写跨平台的应用程序。PHP-GTK 是 PHP 的一个扩展,在通常发布的 PHP 包中并不包含它。
php语言需要记很多函数吗?
Php语言需要记很多很数。
因为这门语言是属于后端编程开发语言的,你懂的,而且是比较热门的一种,常用于网站后端服务器的开发的,其实在一些框架里面,它会自动封装很多的函数,这个时候就需要你寄很多的函数是他自身内部也自带了很多的函数,都是需要你记住的。
现在的PHP会像jQuery一样,慢慢被其他开发语言所淘汰吗?
PHP并没有被哪个语言所淘汰,jq并不是一门语言,jq是js的一个开发框架,准确一点就是封装了各种功能的js类库!而js是现在前端开发的必备语言!暂时没有替代的东西!现在流行的vue等前端框架,都是js的代码!
各种语言没有谁比谁好的区别,只是应用场景不同导致了使用的人不同而已,就看当时流行什么,各种语言的市场占有率就跟流行的趋势变化!
其实现在使用的面向对象的而且比较流行的语言都是出现在2000年前后,比如PHP,asp,java,python,c#,vb,go等等,大部分在90年代,c#,go等则是2000年后出现的!
一、各个时期流行的语言:
1、在pc互联网时代,当时做一个企业网站或者一个个人网站是非常流行的,刚开始使用的是asp来制作的,asp是微软不开源的语言,后来PHP出现了,并且开源,而且免费使用,所以几乎所有的asp网站都转PHP了,由于PHP的简单易学开源免费,几乎所有的小网站都用PHP,莲百度刚开始都是PHP的,现在90%的网站都还是PHP开发的,也出现了很多的cms,比如织梦,这都让开发一个小网站变得非常的简单!
当时一些银行或者其他的金融机构的网站就会使用c#或者java!
这个时期由于电脑的配置不高,能有效显示html代码就不错了,js等脚本语言需求不高!
2、时间来到了电商时代,这个时候在网络编程基本是PHP和Java,阿里选择了Java,腾讯选择了PHP!c#由于闭源,并且收费,所以除了微软自己,其他大公司基本不用!这个时候的电脑都配置很高了,所以各种网页特效就来了,这个时候js几乎应用到所有的网页上!js一度成为市场占有率第一的语言!
3、时间又来到了移动互联网时代,这个时候的安卓app基本都是Java写的,苹果app都是object-c写的,但是服务端的程序还是PHP和Java的天下,因为app大部分是Java,所以Java占有率变得越来越高了!但是还是免费开源的语言的天下,这个时候c#也开源了!这个时候Java才是老大,js紧随其后!
4、现在是ai时代了,因为发明python的人是一个数学家,对大数据的采集和分析能力强,所以现在的ai编程大部分全都是使用了python,但是安卓app和服务端的程序基本还都是Java和PHP!各种寄生在大app上面的微服务小程序流行起来,这些小程序都是用的js,jq在pc互联网时代非常流行,但是放在移动端就不太适合了,所以才有了vue等现代的js框架!
所以在不同的应用场景下,各个语言的占有率都不一样,不会存在谁代替谁的情况!
二、个人对这些语言的看法!
1、PHP,本人接触过但是没有在项目中使用过,尝试学习了,但是没有深入,因为开发环境不好配置!在PHP非常流行的时候我用的是c#!总的来说PHP功能强大,使用的人很多!面向微信开发的网站的首选语言!
2、c#是我读书的时候学习的语言!一款非常适合学习的语言,开发环境搭建简单,只需要安装VS.net就行,不需要配置任何东西!所有的东西都是界面化,写代码非常舒服!但是收费!不能全平台通用!
3、Java是我自己自学的语言,功能强大,编程方式奇特!全平台通用!各种开发框架成熟,生态平衡!部署简单!网上学习资料多!
4、python,现在改行种田,还没有来得及学习!
我是小莫哥,一个回家种田的程序员,期待得到大家的关注!