学习PHP要凉的吗?现在只占市场的2.5%
PHP简介
PHP是英文超文本预处理语言Hypertext Preprocessor的递归缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。可以生成Forms,ComboBoxes,Grid,Menus等的组件,并支持将数据转为XML/JSON格式。
PHP 独特的语法混合了C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。
PHP最初是由勒多夫在1995年开始开发的;现在PHP的标准由the PHP Group维护。PHP以PHP License作为许可协议,不过因为这个协议限制了PHP名称的使用,所以和开放源代码许可协议GPL不兼容。
(图片来自网络配图)
PHP语言的八大优势:
1、开放源代码,所有的PHP源代码事实上都可以得到。
2、免费性,php和其它技术相比,PHP本身免费且是开源代码。
3、快捷性,程序开发快,运行快,技术本身学习快。嵌入于HTML:因为PHP可以被嵌入于HTML语言,它相对于其他语言。编辑简单,实用性强,更适合初学者。
4、跨平台性强,由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、Mac OS下。
5、专业专注,PHP支持脚本语言为主,同为类C语言。
6、效率高PHP消耗相当少的系统资源。
7、面向对象,在php4,php5 中,面向对象方面都有了很大的改进,php完全可以用来开发大型商业程序。
8、图像处理,用PHP动态创建图像,PHP图像处理默认使用GD2。且也可以配置为使用image magick进行图像处理
PHP基础面试技巧
一、核心技术
1.写出一个能创建多级目录的PHP函数
<?php /** * 创建多级目录 * @param $path string 要创建的目录 * @param $mode int 创建目录的模式,在windows下可忽略 */ function create_dir($path,$mode = 0777) { if (is_dir($path)) { # 如果目录已经存在,则不创建 echo "该目录已经存在"; } else { # 不存在,创建 if (mkdir($path,$mode,true)) { echo "创建目录成功"; } else { echo "创建目录失败"; } } } ?>2.写出smarty模板的特点速度快,编译型,缓存技术,插件机制,强大的表现逻辑
3.打开php.ini中的safe_mode,会影响哪些函数?safe_mode,php安全模式,它提供一个基本安全的共享环境,在一个有多个用户账户存在的php开发的web服务器上。当安全模式打开的时候,一些函数将被完全的禁止,而另一些函数的功能将会受到限制,如:chdir,move_uploaded_file,chgrp,parse_ini_file,chown,rmdir,copy,rename,fopen,require,mkdir,unlink等。注意,在php5.3以上版本,safe_mode被弃用,在php5.4以上版本,则将此特性完全去除了。
4.抓取远程图片到本地,你会用什么函数?(51.com笔试题)file_get_contents或者curl
5.PHP的垃圾收集机制是怎样的PHP可以自动进行内存管理,清除不再需要的对象。PHP使用了引用计数(reference counting)这种单纯的垃圾回收(garbage collection)机制。每个对象都内含一个引用计数器,每个reference连接到对象,计数器加1。当reference离开生存空间或被设为NULL,计数器减1。当某个对象的引用计数器为零时,PHP知道你将不再需要使用这个对象,释放其所占的内存空间。
6.请写一段PHP代码,确保多个进程同时写入同一个文件成功核心思路:加锁
<?php $fp = fopen("lock.txt","w+"); if (flock($fp,LOCK_EX)) { //获得写锁,写数据 fwrite($fp, "write something"); // 解除锁定 flock($fp, LOCK_UN); } else { echo "file is locking..."; } fclose($fp); ?>7.写一个函数,尽可能高效的,从一个标准url里取出文件的扩展名
<?php // 方案一 function getExt1($url){ $arr = parse_url($url); //Array ( [scheme] => http [host] => www.sina.com.cn [path] => /abc/de/fg.php [query] => id=1 ) $file = basename($arr[path]); $ext = explode(., $file); return $ext[count($ext)-1]; } // 方案二 function getExt2($url){ $url = basename($url); $pos1 = strpos($url,.); $pos2 = strpos($url,?); if (strstr($url,?)) { return substr($url,$pos1+1,$pos2-$pos1-1); } else { return substr($url,$pos1); } } $path = "http://www.sina.com.cn/abc/de/fg.php?id=1"; echo getExt1($path); echo "<br />"; echo getExt2($path); ?>相关题目:使用五种以上方式获取一个文件的扩展名,要求:dir/upload.image.jpg,找出.jpg,必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如get_ext1(filename),getext2(filename),getext2(file_name)
PHP面试题
1 . PHP 指的是?
A.Private Home Page
B.Personal Hypertext Processor
C.PHP: Hypertext Preprocessor
D.Personal Home Page
2 . PHP 服务器脚本由哪个分隔符包围?
A.<?php>...</?>
B.<script>...</script>
C.<?php…?>
D.<&>...</&>
3 . 如何使用 PHP 输出"hello world"?
A."Hello World";
B.echo "Hello World";
C.Document.Write("Hello World");
4 . 在 PHP 中,所有的变量以哪个符号开头?
A.! B.& C.$
5 . 结束 PHP 语句的正确方法是?
A.</php> B.New line C.; D..
6 . PHP 语法与下列哪种最相似?
A.VBScript B.JavaScript C.Perl和 C
7 . 如何从使用 "get"方法提交的表单中获取数据?
A.$_GET[]; B.Request.QueryString; C.Request.Form;
8 . 请判断以下说法是否正确:当使用 POST 方法时,变量显示在 URL 中。错误
9 . 请判断以下说法是否正确:在 PHP 中,既可以使用单引号 ( ) 也可以使用双引号( " " ) 来包围字符串。正确
10 . 请判断以下说法是否正确:包含文件必须使用文件后缀 ".inc"。错误
11 . 引用文件 "time.inc"的正确方法是?
A.<?php require("time.inc");?>
B.<!--includefile="time.inc"-->
C.<?phpinclude_file("time.inc"); ?>
D.<% include file="time.inc" %>
12 . 在 PHP 中创建函数的正确方法是?
A.function myFunction()
B.create myFunction()
C.new_function myFunction()
13 . 以只读模式打开文件 "time.txt"的正确方法是?
A.fopen("time.txt","r+"); ----这是读写
B.open("time.txt");
C.open("time.txt","read");
D.fopen("time.txt","r");
14 . 请判断以下说法是否正确:
PHP 允许我们直接通过脚本来发送电子邮件。正确
15 . 连接 MySQL 数据库的正确方法是?
A.mysql_open("localhost");
B.mysql_connect("localhost");
C.connect_mysql("localhost");
D.dbopen("localhost");
PHP程序员就业前景
作为老牌的Web后端编程语言,PHP 在全球市场占有率非常高,仅次于 Java ,从各个招聘网站的数据上来看PHP 开发的职位非常多,薪资水平也非常不错。实际在中小企业、互联网创业公司PHP的市场地位是高于 Java 的。Java 在超大型企业、传统软件行业、金融领域优势更大。
PHP程序员就业前景也非常不错,特别是一些大城市,对PHP程序员的需求非常大,PHP培训也不少。
互联网的企业生存和竞争的核心在于技术,技术/研发人才永远才是这些企业不可或缺的网络应用。PHP主要用来做网站开发,许多小型网站都用PHP开发,PHP是开源的,这是使得PHP经久不衰的原因。在电商、社区等方面,PHP具备非常成熟的开源代码和模板,因此使得PHP应用极为广泛。
(图片来自网络配图)
PHP的优势和不足
PHP主要用来做网站开发,许多小型网站都用PHP开发,PHP是开源的,这是使得PHP经久不衰的原因。在电商、社区等方面,PHP具备非常成熟的开源代码和模板,因此使得PHP应用极为广泛。劣势是受众较小,有可替代性。
PHP坚持脚本语言为主,所以PHP入门比较简单,经过3-4个月培训即可学成,找工作起薪比Java要低,平均工资比java也要低些,不过有经验的php程序员待遇较高,4、5年开发经验的php工程师,工资可达1万5,不过再提升就比较难,php的提升空间不如java。相对于其他编程语言来说,发展前景比较乐观,但不如Java稳定。
PHP发展前景
在IT业和互联网的超速发展的时代,企业对PHP程序员的需求也大量增加,我们可以看到国内,包括Google、百度、网易、新浪、搜狐、阿里巴巴、奇虎、eBay、腾讯等各大网站都在寻求PHP高手。
近几年各类企业发布招聘人才信息,对人才的需求超过60000名,但是因为国内PHP人才贮备不足、培训体系的不健全以及国内Web开发人员对PHP的价值认识不够,我们看到个人的应聘累计只有6000名,人才缺口竟然是10:1,PHP人才非常稀缺。这个岗位是程序员中最火的,这种严重供不应求的局面在未来几年中也将愈演愈烈。
据权威部门统计,我国PHP人才非常紧缺,大约是每年50万人左右。因此未来的几年内,随着信息化,智能化,网络化的发展,PHP系统技术也将获得广阔的发展空间。PHP开发者们、即将或者正在学习PHP开发技术的同学也应该可以清楚地看到,PHP的发展前景可以说是非常好。因此,现在要做的就是学好PHP开发语言和技术,夯实基础,不断在实践中锻炼自己的开发能力,将来能体现自己的价值。
以上就是PHP的一些发展前景及就业情况,仅供参考。
(欢迎大家留言对此的看法!)