php中问号逗号运算符$a?"a":"b"
问号逗号运算符语法
代码如下 | 复制代码 |
$a =1; 结果输出 A |
解析上面的语句成if else
代码如下 | 复制代码 |
$a =1; 结果输出 A |
例子,在应用中我们根据过来的参数定义表名
代码如下 | 复制代码 |
$tabname = $tag ==1 ? "aatt":"bfav"; $sql ="select * from $tabname "; |
例子,在获取数据post或get时我们也可以使用isset() 与问号运算符来处理
代码如下 | 复制代码 |
$id = htmlspecialchars(isset($_GET[$str])?$_GET[$str]:''); |
好了到这里我们就己经介绍完了问号运算符的用法了。
register_globals是php中一个自定全局变量功能,在默认情况下是关闭了,但如果你使用thinkphp框架那么就需要打开register_globals功能了,下面我们一起来看看如何开启它吧。
开启方法
我们找到php.ini
查找:register_globals
将
register_globals = Off
更改为
register_globals = On
读写MySQL是需要利用mysql_connect来与mysql数据库连接,连接数据库之后我们就可以使用mysql中的sql语句来读写数据库了,下面来整一下例子。连接数据库
下面是最简单的PHP连接MySQL数据库的代码:
代码如下 | 复制代码 |
<?php $link=mysql_connect("localhost","root","password"); if (!$link) echo "connect error"; else echo "connect ok"; ?> |
其中mysql_connect()连接函数,localhost代表数据库服务器的地址,root是MySql数据库用户名,password是MySql数据库的密码。使用时改成自己的即可。
为了更方便以后使用,将连接代码规范化一下:
代码如下 | 复制代码 |
<?php $link_host='localhost'; $link_user='root'; $link_pass='password'; $link=mysql_connect($link_host,$link_user,$link_pass); if ($link) { echo "connect ok!"; } else { echo "connect fail!"; } ?> |
用三个变量来读取服务器地址、用户名和密码,方便以后进行表单读取和赋值等
建立数据库
#建立数据库代码
代码如下 | 复制代码 |
<?php |
建立了link_system数据库之后,还需要建立表格。
#建立数据库表格
//设置需要建设的表格为link_table,下面是需要建立的表名,用来存储不同的数据,可以根据自己的需要来设置。
link_id 数据的id
link_name 友链名称
link_url 友链网址
link_detail 简介
link_contact 联系方式
link_show 是否显示
link_order 排列顺序
link_sort 分类
代码如下 | 复制代码 |
//因为我们友链表中有分类,所以需要建立一个分类表link_sorts,我的设想是存友链显示的位置,比如首页或者频道页、内页等。 建立表格的完整PHP代码如下: <?php
|
如果执行成功,则建立数据库完毕!开始下一步就是添加数据了
添加数据
首先建立一个表格,用来填写需要向MySQL数据库写入的数据:
代码如下 | 复制代码 |
#写入数据库 <form action="insert_ok.php" method="post"> |
这里其他的都是用文本框输入,而是否显示使用复选框来实现,默认选中。
代码如下 | 复制代码 |
执行写入的程序页面 <?php |
如果执行成功,则添加友链数据完成,至于分类暂时先不添加,到后期再将分类加入里面。下一步则是显示数据、编辑数据和删除数据的实现了。
显示写入数据库数据
规划一下我们要显示的内容吧,首先因为是友链展示页面,则需要显示友链的标题、友链的锚链接、友链的描述,并且安装我们添加友链时候自定义的顺序来排列。
//友情链接展示页面
view.php
代码如下 | 复制代码 |
<?php
|
这样就把友情链接显示出来了,后期根据自己需要的效果,重新调整。
php date()是一个获取时间日期的函数但你对于php date()函数了解多少呢,下面本文章就介绍的介绍日期函数在开发中一些常用的格式与例子吧。
PHP可以通过date() 函数来显示服务器日期和时间,下面详细了解一下如何使用date()函数来输出日期:
php date() 函数详解
1,年-月-日
代码如下 | 复制代码 |
echo date('Y-m-j');
|
大写Y表示年四位数字,而小写y表示年的两位数字;
小写m表示月份的数字(带前导),而小写n则表示不带前导的月份数字。
代码如下 | 复制代码 |
|
大写M表示月份的3个缩写字符,而小写m则表示月份的数字(带前导0);
没有大写的J,只有小写j表示月份的日期,无前导o;若需要月份带前导则使用小写d。
代码如下 | 复制代码 |
|
大写M表示月份的3个缩写字符,而大写F表示月份的英文全写。(没有小写f)
大写S表示日期的后缀,比如“st”、“nd”、“rd”和“th”,具体看日期数字为何。
小结:
表示年可以用大写的Y和小写y;
表示月可以用大写F、大写M、小写m和小写n(分别表示字符和数字的两种方式);
表示日可以用小写d和小写j,大写S表示日期的后缀。
2,时:分:秒
默认情况下,PHP解释显示的时间为“格林威治标准时间”,与我们本地的时间相差8个小时。
代码如下 | 复制代码 |
echo date('h:i:s A'); |
小写g表示12小时制,无前导0,而小写h则表示有前导0的12小时制。
当使用12小时制时需要表明上下午,小写a表示小写的“am”和“pm”,大写A表示大写的“AM”和“PM”。
代码如下 | 复制代码 |
echo date('G:i:s'); |
大写G表示24小时制的小时数,但是不带前导的;使用大写的H表示带前导的24小时制小时数
小结:
字母g表示小时不带前导,字母h表示小时带前导;
小写g、h表示12小时制,大写G、H表示24小时制。
3,闰年、星期、天
代码如下 | 复制代码 |
echo date('L');
echo date('D'); |
大写L表示判断今年是否闰年,布尔值,为真返回1,否则为0;
小写l表示当天是星期几的英文全写(Tuesday);
而使用大写D表示星期几的3个字符缩写(Tue)。
代码如下 | 复制代码 |
echo date('w'); echo date('W'); 小写w表示星期几,数字形式表示 echo date('t'); echo date('z'); |
小写t表示当前月份又多少天
小写z表示今天是本年中第几天
4,其他
代码如下 | 复制代码 |
|
date函数中时区问题
date("Y-m-d h:i:s") 总和服务器时间相差几个小时
解决方法如下:
一、在页头使用date_default_timezone_set()设置我的默认时区为北京时间
代码如下 | 复制代码 |
date_default_timezone_set('PRC'); echo date('Y-m-d H:i:s'); |
时间和服务器当前时间一样了!!
二、修改php.ini。
打开php5.ini查找date.timezone 去掉前面的分号 = 后面加XXX,重启http服务
(如apache2或iis等)即可。
关于XXX,大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,
Asia/Urumqi (依次为重庆,上海,乌鲁木齐)港台地区可用:Asia/Macao ,
Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)还有新加坡:
Asia/Singapore老外好像把北京漏调了其他可用的值是:Etc/GMT-8 ,Singapore ,
Hongkong ,PRC,PRC是什么?PRC是中华人民共和国啊-_-以上都是从php官方说明档里
整理出来的GMT+8下面的地区,可能会有遗漏。
date函数月和日带0问题
代码如下 | 复制代码 |
一、带零 echo date('Y-m-d'); 二、不带零 echo date('Y-n-j'); |
本文主要总结给对PHP 特性不了解的新手看的,因此演示代码占比较多的篇幅。
大家看还缺哪些给补充吧。欢迎来邮件或在PHPChina 的《PHPer》杂志版块纠正错误。
动态语言就是能够在运行时改变程序结构和变量类型的语言。例如:新的类和对
象可以被加载和创建,新的函数或方法可以加入和去除等等,比如Smalltalk、Ruby、
Python、PHP、Lua、Perl、Groovy 等。反之则是静态语言,比如C/C++、Java、C#等。
动态语言的动态特性决定它开发的时候需要更少的代码,有更高的灵活性。PHP
的动态特性奠定了它存在的价值,熟悉PHP 的动态特性让我们更能活用PHP。
1 弱类型变量
动态语言都被设计成弱类型,也就是说变量被赋值以后才能确定它的数据类型,
当代码在实际执行时,才会检测变量是否被非法使用。
PHP 变量是弱类型变量就意味着,我们不需要声明变量的类型,在运行时自动检
测变量的类型,并且可以认为改动变量的类型。
2、PHP动态特性:
特性1、弱类型变量
PHP变量是弱类型变量就意味着,我们不需要声明变量的类型,在运行时自动检测变量的类型,并且可以认为改动变量的类型。
代码如下 | 复制代码 |
// PHP弱类型变量例子 $test = 1; print gettype($test) . ": $testn"; $test = 1.23456789; print gettype($test) . ": $testn"; $test = 'test'; // 变量自动改变类型 print gettype($test) . ": $testn"; $test = array('t'=>'HI,I m from an array!'); settype($test, 'object'); // 改变变量的类型 print gettype($test) . ": {$test->t}n"; // 测试变量类型 if(is_object($test)) { print "Test Type: My Type Is object.n"; } else { print gettype($test); } |
弱类型并不意味着代码不安全,或者不健壮。极限编程已经给成为一种软件开发方法。这个方法侧重测试,使用全面的单元测试方案来驱动开发过程。通过不同环境
下执行所编写的代码,就可以保证代码的安全性和健壮性。经验证明,在弱类型语言中,综合运用弱类型和单元测试通常比传统系统编程语言的类型检查更好(请参
特性2、可变变量
一个变量的变量名可以动态的设置和使用
代码如下 | 复制代码 |
// 可变变量例子 $var = 'hi'; $$var = 'hello'; print $var; print $$var; print $hi; // 等价于上一行 |
特性3、变量函数
这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且将尝试执行它。除了别的事情以外,这个可以被用于实现回调函数,函数表等等。
代码如下 | 复制代码 |
// 变量函数例子 // 无参数函数 function a(){ print "i'm an"; } // 有参数函数 function b($param) { print "i'm b, param: $paramn"; } $x = 'a'; $x(); $x = 'b'; $x('xxxxxxxxxxx'); |
特性4、可变长度参数列表
调用函数的时候,函数的参数个数可以不一样
代码如下 | 复制代码 |
function foo() { $numargs = func_num_args(); print "Number of arguments: $numargsn"; print "the third argument: " . func_get_arg(2) . "n"; } foo(1, 2, '...@...'); foo(1, 2, '############', 4); |
相关文章
- 这篇文章介绍了c#的异或运算符,有需要的朋友可以参考一下...2020-06-25
- 轻松学习C#的运算符,对C#的运算符感兴趣的朋友可以参考本篇文章,帮助大家更灵活的运用C#的运算符。...2020-06-25
- 这只我自己在学C#中的一些总结,其中对于各级的划分方式、各操作符的优先级的理解并不见得正确,只是自己的看法,拿出来与大家分享...2020-06-25
- 在本篇文章里小编给大家分享了一篇关于R语言运算符知识点讲解内容,有兴趣的朋友们可以参考下。...2021-05-06
- 这篇文章主要介绍了C++中的或||、与&&、非!逻辑运算符基本用法整理,是C++入门学习中的基础知识,需要的朋友可以参考下...2020-04-25
- 这篇文章主要介绍了JS不要再到处使用绝对等于运算符了,对此感兴趣的同学,可以参考下...2021-05-01
- 这篇文章主要介绍了C#运算符和表达式,这是自学C#编程的第五篇,希望对大家的学习有所帮助。...2020-06-25
- 这篇文章主要介绍了C#运算符重载用法,实例分析了C#中运算符重载的基本实现与使用技巧,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C++中运算符 &和&&、|和|| 的详解及区别的相关资料,这里举例说明该如何区别他们的不同,需要的朋友可以参考下...2020-04-25
- 在php中运算符有常用的三种了如有一元运算符,二元运算符,三元运算符了,下面来简单的介绍一下吧。 运算符是可以通过给出的一或多个值(用编程行话来说,表达式)来产生...2016-11-25
- 这篇文章主要介绍了C#中的除法运算符与VB.NET中的除法运算符,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C语言中逻辑运算符与条件运算符的学习教程,条件运算符问号即三目运算符使用起来十分方便,需要的朋友可以参考下...2020-04-25
- 这篇文章主要介绍了C# null 合并运算符??(双问号)使用示例,?? 运算符称作 null 合并运算符。如果此运算符的左操作数不为 null,则此运算符将返回左操作数;否则返回右操作数,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了Java基本数据类型和运算符,结合实例形式详细分析了java基本数据类型、数据类型转换、算术运算符、逻辑运算符等相关原理与操作技巧,需要的朋友可以参考下...2021-08-05
深入解析C++编程中__alignof 与__uuidof运算符的使用
这篇文章主要介绍了C++编程中__alignof 与__uuidof运算符的使用,是C++入门学习中的基础知识,需要的朋友可以参考下...2020-04-25- 本文向大家简单介绍一下Perl语法中Perl运算符的概念,Perl语言中Perl运算符有很多值得学习的地方,这里和大家分享一下它的概念和用法...2020-06-29
- 这篇文章介绍了C# 运算符的基础知识,有需要的朋友可以参考一下...2020-06-25
- 在ES6属性中新增了两个属性,分别是解构和…运算符,下面这篇文章主要给大家介绍了关于JavaScript ES6解构运算符的理解和运用,文中通过示例代码介绍的非常详细,需要的朋友可以参考下...2021-10-05
- 以下是对C#中各种运算符号的说明及作用进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助...2020-06-25
- 今天小编就为大家分享一篇关于Lua基础之运算符的使用示例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧...2020-06-30