php判断是否为数字

 更新时间:2016年11月25日 14:56  点击:1824
我们用intval来判断用户输入的信息是否为数字,这个可以自动转换成数字,如果是0,返回的值也是假的。本站原创教程

/*
在php判断用户输入的是否为数字型或是否为数字型字符串,我们会用到is_numeric与intval函数来处理。
*/

$num  = 1;
$num1 ='1';
$str  ='abc';


if( is_numeric( $num ) )
{
 echo $num.'是数字型';
}
//1是数字型

if( is_numeric( $num1) )
{
 echo $num1.'是数字型';
}
else
{
 echo $num1.'不是数字型';
}
//1是数字型
/*
 第二个实例为看还是数字型呢,这要看php是那类型的语言了,关键是php是弱语言型,所以就会自动把数字型字符转换成数字了。
*/

if( intval( $str ) )
{
 echo $str.'是数字';
}
else
{
 echo $str.'不是数字';
}
//acd不是数字

if( intval( $num1 ) )
{
 echo $num1.'是数字';
}
else
{
 echo $num1.'不是数字';
}

//1是数字

//转载注明来源www.111cn.net

本教程提供了几款php 删除字符串中的空格多种方法哦,用了php函数,str_replace,trim,正则等替换字符串的空格有效方法

用php自带的函数

 代码如下 复制代码
str_replace( "   ", " ",$str);
来替换

 

 代码如下 复制代码
<?php
$str = "##使用函数trim去掉字符串两端特定字符####";
$str1 = trim($str,"#"); //为函数trim传入第二个参数,trim将删除字符串$str两端的#字符
echo $str."<br>";
echo $str1;
?>


实例

 

 代码如下 复制代码
<?php
$str = " 使用函数trim去掉字符串两端空白字符 ";
$str1 = trim($str); echo "处理前有".strlen($str)."个字符";
echo "<br/>";
echo "<br/>";
echo "使用trim函数处理后有".strlen($str1)."个字符";
?>

看个高级一点的
php程序删除"数组"中"字符串元素"中的"空格"

 代码如下 复制代码
<?
$arr=array();
$arr[]="ad dfd  dfd";
$arr[]="saf sdf dsf";
$arr[]="sdf dsfgfd dd";
$arr[]="dfd dfferw ";
while(list($name,$value)=each($arr)){
echo $value;
$arr2[]=trim($value);//去空格
}
print_r($arr2);//这应该是你想要的数组吧~
?>

用正则表达试删除空格

 代码如下 复制代码
$string = preg_replace("/s+([ $])/", "\1", $string);

when "$" is inside [], www.111cn.net it does not represent the end of string


---------------------------------------------------------------

 代码如下 复制代码
$string = preg_replace("/s+([ ]|$)/", "\1", $string);


---------------------------------------------------------------

 代码如下 复制代码
$string = preg_replace("/ +([ ]|$)/", "\1", $string);


---------------------------------------------------------------

 代码如下 复制代码
$string = preg_replace('/([ ])[s]+/', '\1', $string);

 

 //$globals 数组
 
 function testfunction() {
  echo $globals["php_self"];
 }
 testfunction(); 
 
 // 本程序使用全局定义
 function testfunction() {
  global $s;
  echo $s;
 }
 $s='this is www.111cn.net';
 testfunction();
 
 // 静态变量的例子
 function testfunction() {
  static $mystr;
  $mystr.="111cn.net";
  echo $mystr."<br> ";
 }
 testfunction(); // 111cn.net
 testfunction(); // 111cn.net111cn.net
 testfunction(); // 111cn.net111cn.net111cn.net
 
 // 普通变量
 function testfunction() {
  $mystr.="www.111cn.net";
  echo $mystr."<br> ";
 }
 testfunction(); // www.111cn.net

//下面我们来简单的介绍一下php中的超级全局变量有那些

 //$GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量,实例
 
  $GLOBALS['site'];
 
 //$_SERVER 变量由 web 服务器设定或者直接与当前脚本的执行环境相关联
 
  echo $_SERVER['DOCUMENT_ROOT'];
 
 //$_GET URL 请求提交至脚本的变量
 
  echo $_GET['ac']
  
 //$_POST HTTP POST 方法提交至脚本的变量
  
  echo $_POST['ab']
  
 //$_COOKIE HTTP Cookies 方法提交至脚本的变量
  
  setcookie('load','www.111cn.net',time()+3600*24,'/','192.168.0.110');
  $cookis = $_COOKIE['loadDomain'];
  
 //$_FILES HTTP POST 文件上传而提交至脚本的变量
  
  <form name="form1" enctype="multipart/form-data" method="post" action="">
    <input type="file" name="file">
    <input type="submit" name="Submit" value="提交">
  </form>
  
  输出值:
  print_r( $_FILES['file'] );

  Array
  (
   [name] => 45457.jpg
   [type] => image/pjpeg
   [tmp_name] => C:WINDOWSTempphpD7.tmp
   [error] => 0
   [size] => 10974
  )
  
 //$_ENV 不推荐使用
 //$_REQUEST 由GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不安全并且效率不高。
  
  $_REQUEST['bb'] //会自动提交过来的数据是post,get形式

今天我们要为php学者提供一款php 网上在线调查系统源码,这是一款从html到php的简单的应用实例,就是关于在线投票系统代码。

html代码


 

 代码如下 复制代码

<html>
<head>
<title>调查表</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF">

<?php
// 定义显示表单函数
function display_form() {

global $PHP_SELF;

?>
<FORM action="<?php echo $PHP_SELF; ?>"METHOD=post>
名字: <INPUT TYPE=TEXT NAME="name"><BR>
单项选择:
<INPUT TYPE=RADIO NAME="first" VALUE="我很笨">我很聪明
<INPUT TYPE=RADIO NAME="first" VALUE="我非常笨">我很笨
<INPUT TYPE=RADIO NAME="first" VALUE="我简直就是个傻冒"> 我简直就是个傻冒 <br>

多项选择:
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢打蓝球">我喜欢打蓝球
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢游泳">我喜欢游泳
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢跳舞">我喜欢跳舞
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢爬山">我喜欢爬山
<INPUT TYPE=HIDDEN NAME="stage" VALUE= "results"><p>
<INPUT TYPE=SUBMIT VALUE= "谢谢"></p>
</FORM>

<?php
}
?>

//程序开始

 代码如下 复制代码

<?php
// 定义处理表单函数
function process_form()
{
global $name ;
global $first;
global $second;

if ($first == '我很笨') {
 $first_message = '你不笨。';
}
elseif ($first == '我很聪明') {
 $first_message = '你不聪明。';
}
else {
 $first_message = '你简直就象是一个聪明的人了。';
}

$favorite_second = count($second);
if ($favorite_second <= 1)

 $second_message = '但你做错事了,忏悔吧!';
}
elseif ($favorite_second > 1 && $favorite_second < 4)
{
 $second_message = '你是只爱运动的的猩猩。';
}
else {
 $second_message = '你运动的太多了,对猩猩来讲已经过量:(';
}

echo "这是一项针对猩猩的测试:<br><br>";
echo "你好! 你的名字叫:$name. <br><br>";
echo "你的测验结果是。。。。。$first_message $second_message";
}
?>

<?php
if (empty($stage)) { display_form(); }
else { process_form(); }
?>

</body>
</html>

投票与在线调查系统实例原理就是做一个单选或选框,收集用户的信息进来分罢了。

Linux下Memcache服务器端的安装
服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.3.0 。
下载:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz
另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,libevent的最新版本是libevent-1.3。(如果你的系统已经安装了libevent,可以不用安装)
官网:http://www.monkey.org/~provos/libevent/
下载:http://www.monkey.org/~provos/libevent-1.3.tar.gz

用wget指令直接下载这两个东西.下载回源文件后。
1.先安装libevent。这个东西在配置时需要指定一个安装路径,即./configure –prefix=/usr;然后make;然后make install;
2.再安装memcached,只是需要在配置时需要指定libevent的安装路径即./configure –with-libevent=/usr;然后make;然后make install;
这样就完成了Linux下Memcache服务器端的安装。详细的方法如下:


1.分别把memcached和libevent下载回来,放到 /tmp 目录下:
# cd /tmp
# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz

2.先安装libevent:
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure –prefix=/usr
# make
# make install

3.测试libevent是否安装成功:
# ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent-1.2.so.1 -> libevent-1.2.so.1.0.3
-rwxr-xr-x 1 root root 263546 11?? 12 17:38 libevent-1.2.so.1.0.3
-rw-r–r– 1 root root 454156 11?? 12 17:38 libevent.a
-rwxr-xr-x 1 root root 811 11?? 12 17:38 libevent.la
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent.so -> libevent-1.2.so.1.0.3
还不错,都安装上了。

4.安装memcached,同时需要安装中指定libevent的安装位置:
# cd /tmp
# tar zxvf memcached-1.2.0.tar.gz
# cd memcached-1.2.0
# ./configure –with-libevent=/usr
# make
# make install
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到 /usr/local/bin/memcached ,

5.测试是否成功安装memcached:
# ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug

安装Memcache的PHP扩展
1.在http://pecl.php教程.net/package/memcache 选择相应想要下载的memcache版本。
2.安装PHP的memcache扩展

tar vxzf memcache-2.2.1.tgz
cd memcache-2.2.1
/usr/local/php/bin/phpize
./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config –with-zlib-dir
make
make install

3.上述安装完后会有类似这样的提示:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/

4.把php.ini中的extension_dir = “./”修改为

extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”

5.添加一行来载入memcache扩展:extension=memcache.so

memcached的基本设置:
1.启动Memcache的服务器端:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,

2.如果要结束Memcache进程,执行:

# kill `cat /tmp/memcached.pid`

也可以启动多个守护进程,不过端口不能重复。

3.重启apache,service httpd restart

Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
< ?php
$mem = new Memcache;
$mem->connect(”127.0.0.1″, 11211);
$mem->set('key', ‘This is a test!', 0, 60);
$val = $mem->get('key');
echo $val;
?>

[!--infotagslink--]

相关文章