
正文
php数据结构set php数据结构与算法面试题
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
PHP是什么?
PHP(中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。
PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多。
PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
PHP在数据库方面的丰富支持,也是它迅速走红的原因之一,它支持下列的数据库或是数据文件:
Adabas 、D、 DBA、dBase 、dbm 、filePro 、Informix 、InterBase、mSQL 、Microsoft SQL Server、·MySQL、Solid、Sybase、 Oracle 、PostgreSQL
而在Internet上它也支持了相当多的通讯协议 (protocol),包括了与电子邮件相关的 IMAP,POP3;网管系统 SNMP;网络新闻NNTP;帐号共用 NIS;全球信息网HTTP及Apache服务器;目录协议LDAP以及其它网络的相关函数。
扩展资料:
PHP的特性包括:
1、PHP独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。
2、PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。
3、PHP支持几乎所有流行的数据库以及操作系统。
4、PHP可以用C、C++进行程序的扩展。
参考资料:
百度百科--PHP
相关问答
Q1: php处理 字段类型:set('a', 'b')
你这设置明显不合逻辑php数据结构set,set类型只能存一个值,所以你php数据结构set的input应该是radio才对,而不是checkbox
这样,你获取它的值,直接$flag
=
$_POST["flag"]即可,然后将得到的值插入数据库。
至于数据库类型为set类型,只要你插入的值在于与set中,则不会错,如入,你可以直接插入
INSERT
INTO
表
(flag)
VALUES
('$flag')
也可INSERT
INTO
表 SET
flag = '$flag'
Q2: 我想给PHP的私有属性赋值,用__set()方法,可是不正确呢?
function __set($width,$value){
$this - $width = $value;
}
$this -
width的width前需要有$。
Q3: php __set()和__get()的具体用法,举例说明,谢~
__set()与__get()是两个魔术方法php数据结构set,用于设置和输出对象里的私有成员属性的php数据结构set,存在于类中,详细使用方法
class main{
private $name = "李三";
private function __set($_name,$_val){
$this-$_name=$_val;//当外面直接设置私有成员属性$name的时候被自动调用
}
private function __get($_name){
retrun $this-$_name;//当外面直接使用私有成员属性$name的时候被自动调用
}
}
$my = new main;
$my-name="李四";//此时,就调用了__set()魔术方法
echo $my-name;//此时,就调用__get()魔术方法
谢谢采纳!!!
Q4: PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
队列这种数据结构更简单,就像我们生活中排队一样,它的特性是先进先出(FIFO)。
PHP
SPL中SplQueue类就是实现队列操作,和栈一样,它也可以继承双链表(SplDoublyLinkedList)轻松实现。
SplQueue类摘要如下:
SplQueue简单使用如下:
复制代码
代码如下:
$queue
=
new
SplQueue();
/**
*
可见队列和双链表的区别就是IteratorMode改变了而已,栈的IteratorMode只能为:
*
(1)SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_KEEP
(默认值,迭代后数据保存)
*
(2)SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_DELETE
(迭代后数据删除)
*/
$queue-setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_DELETE);
//SplQueue::enqueue()其实就是
SplDoublyLinkedList::push()
$queue-enqueue('a');
$queue-enqueue('b');
$queue-enqueue('c');
//SplQueue::dequeue()其实就是
SplDoublyLinkedList::shift()
print_r($queue-dequeue());
foreach($queue
as
$item)
{
echo
$item
.
PHP_EOL;
}
print_r($queue);
而优先队列SplPriorityQueue是基于堆(后文介绍)实现的。
SplPriorityQueue的类摘要如下:
SplPriorityQueue简单使用:
$pq
=
new
SplPriorityQueue();
$pq-insert('a',
10);
$pq-insert('b',
1);
$pq-insert('c',
8);
echo
$pq-count()
.PHP_EOL;
//3
echo
$pq-current()
.
PHP_EOL;
//a
/**
*
设置元素出队模式
*
SplPriorityQueue::EXTR_DATA
仅提取值
*
SplPriorityQueue::EXTR_PRIORITY
仅提取优先级
*
SplPriorityQueue::EXTR_BOTH
提取数组包含值和优先级
*/
$pq-setExtractFlags(SplPriorityQueue::EXTR_DATA);
while($pq-valid())
{
print_r($pq-current());
//a
c
b
$pq-next();
}
php数据结构set的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php数据结构与算法面试题、php数据结构set的信息别忘了在本站进行查找喔。








