如何赋值给PHP函数。我有这样的代码:PHP将变量赋值给函数
<?php
$val_id = "010105";
function get_news()
{
$query = mysql_query"SELECT * FROM news WHERE val_id = '$val_id'";
}
当我查询该函数时,$ val_id的值不能发送到函数get_news。所以结果是空的。
请帮助解决这个问题。谢谢
如何赋值给PHP函数。我有这样的代码:PHP将变量赋值给函数
<?php
$val_id = "010105";
function get_news()
{
$query = mysql_query"SELECT * FROM news WHERE val_id = '$val_id'";
}
当我查询该函数时,$ val_id的值不能发送到函数get_news。所以结果是空的。
请帮助解决这个问题。谢谢
这是一个范围问题。 $val_id
是一个全局变量,所以你的函数不知道它,除非你以某种方式告诉它它。你有两个主要选择:
$val_id
作为参数(推荐):$val_id = "010105";
function get_news($val_id)
{
$query = mysql_query"SELECT * FROM news WHERE val_id = '$val_id'";
}
get_news($val_id);
$val_id
作为一个全球性的(不推荐):$val_id = "010105";
function get_news()
{
global $val_id;
$query = mysql_query"SELECT * FROM news WHERE val_id = '$val_id'";
}
get_news();
不错......现在按我的意愿工作。谢谢埃德 – hiDayurie
很高兴帮助! –
您需要通过val_id
作为该函数的参数。试试这个:
<?php
$val_id = "010105";
function get_news($val_id) {
$query = mysql_query("SELECT * FROM news WHERE val_id = $val_id");
}
这是因为你设置val_id
功能之外,但它没有设置内功能。
通过将它传递给括号,您可以将其作为局部变量get_news()
提供。
试试这个!
get_news(“010105”);
功能get_news($ val_id)
{
$查询=请求mysql_query “SELECT * FROM消息WHERE val_id = '$ val_id'”;
}
请允许我介绍一个比较成熟的版本。
class News
{
private $value_id;
public function News($value_id) {
$this->value_id = $value_id;
}
public function get()
{
$query = sprintf("SELECT * FROM news WHERE val_id = %d", $this->value_id);
return mysql_query($query);
}
}
$news = new News($val_id);
$news->get();
havr你试过把varibale放在函数里面吗? –