php是用什么语言写的
个人感觉php是用c,c++这类语言写的,因为php的语法看上去和c,c++非常像。语法也极其灵活。而且你如果下载的是php源文件版本,在window环境下,可以用Visual C++ 6.0这类工具去编译。
......
在php5中,用self和$this有什么不同
在php5中,self和$this分别在什么情况下的使用:
使用$ this来引用当前对象。使用self来引用当前类。换句话说,非静态成员使用$this->memeber,静态成员使用自self::$member。
......
php如何防止sql注入
如果用户用一个没有经过修改的sql查询语句替换input值,这样应用程序就会容易受到SQL注入,就像下面的例子:
$unsafe_variable = $_POST['user_input'];
mysql_query("INSERT INTO table (column) VALUES ('" . $unsafe_variable . "')");
因为用户可以输入像value'); DROP TABLE table;-- ,查询就变成:
INSERT INTO table (column) VALUES('`**`value'); DROP TABLE table;--`**`')
我们要做什么来防止这种情况发生?
使用预处理语句和参数化查询。可以任何参数和sql语句分离发送解析到数据库服务器。这种方式可以使攻击都不能注入恶意的SQL。
你基本上有两种选择来实现这一目标:
1.使用pdo。
$stmt = $pdo->prepare('SELECT * FROM employees WHERE name = :name');
$stmt->execute(array('name' => $name));
foreach ($stmt as $row) {
// do something with $row
}
需要注意的是使用PDO来访问MySQL数据库时,真正的预处理语句不使用默认值。为了解决这个问题,你必须禁用预处理语句的模拟形式。创建使用PDO连接的一个例子是:
$d......
php提交的表单中出现Undefined index的提示
Undefined index表示未定义索引,出现这个提示,表示某个提交的表单参数不存在,导致$_POST用那个参数名做键名出现错误,解决的办法是在使用$_POST["keyname"]的时候先做一下判断,如
isset($_POST["keyname"])
{
//Do something
}
当然也可用修改php.ini,修改错误提示等级来隐藏错误,个人认为为了保证程序的键壮性,最好还是把代码写得尽可能完善,谁知道哪天服务器的运行环境会不会发生变化。
......
用phpmyadmin导入大的sql文件
当我们用phpmyadmin导入一个大的sql文件时,会遇到浏览器没有反应,一直是运行等待状态,经过漫长等待后,最后得到一个类似错误提示:
Fatal error: Maximum execution time of 300 seconds exceeded in C:\wamp\apps\phpmyadmin3.5.1\libraries\import\sql.php on line 135
这说明php执行时间超时。要解决这个问题有以下方法
1.设置php.ini。
upload_max_filesize=2M
max_execution_time=300
post_max_size=8M
这三个选项改成你需要的数值.
2.解决方案:请使用以下命令.
mysql -u root -p dbname
use dbname;
mysql> SHOW DATABASES;
mysql> show tables;
SOURCE path (D:/your_file_name.sql); // 请给出正确的路径
......
近期文章
- 织梦5.7{dede:php}标签不起作用的解决办法
- php版本non-thread-safe和thread-safe的区别
- 什么是fatal flex scanner internal error--end of buffer missed
- php文件命名建议用小写
- php cookie字典
- seft和static在php中有什么不同
- 用php快速获取图片大小
- 用php的json_decode()检测json数据是否合法
- php三个等号
- unset和=null有什么不同
- php如何捕获一个警告信息
- 如何获得php数组中最后一个元素的键名?
- 在PHP中,你如何改变数组中某一元素的键名?
- php多维数组转xml
- php如何转化数组为SimpleXML对象
- php如何把数组定义为常量
- php根据数组中的值删除数组中的元素
- 计算两个日期相差多少天
- 如何捕获var_dump的输出结果保存到一个字符串中?
- 用php获取完整的URL