首页 > 编程知识 正文

php竟然提示语句外的语法错误(关于php下列说法错误的是)

时间:2023-12-02 21:07:32 阅读:311506 作者:GFNV

本文目录一览:

  • 1、刚开始自学PHP的小白求解,在DW中运行PHP书中例子,显示语法错误
  • 2、php语法错误
  • 3、php错误提示Syntax error, unexpected' ?
  • 4、PHP语法错误
  • 5、总提示我的PHP语法错误 在线求解
  • 6、php中赋值是没有任何语法错误但是在浏览器中提示错误

刚开始自学PHP的小白求解,在DW中运行PHP书中例子,显示语法错误

if流程控制语句正常是这样:

?php

$a = 0;

if($a == 0){

    echo "$a等于0";

}

你的写法属于if的缺省语句,估计DW不识别而已。类似于这样

?php

$a = 0;

if($a == 0)

echo "$a等于0";

这样和上面的效果是一样的,建议采用上面的写法

php语法错误

1、可以看下 json_deconde($result); 是否有返回 NULL,如果是,说明解析失败,下一步:

2、看下$request-request() 返回的是否正确,如果返回的是一个WP_Error对象,说明请求失败,检查你的请求是否正确,先处理好这个问题。

如果请求正确,返回的是一个数组,下一步:

3、最简单的方法就是直接打印$result看下。$result['body']的值是否有值,且符合json格式。如果这里没有问题,基本上就没问题了!

【代码】

// 建议一步步输出数据来看下整个流程是否符合预期

if(!function_exists('get_sina_short_url')){

function get_sina_short_url($long_url){

$api_url =';url_long='.$long_url;

$request = new WP_Http;

$result = $request-request($api_url);

// 如果返回的是一个对象(WP_Error对象),说明请求失败

if(is_object($result))

{

// 处理

return false;

}

$result = $result['body'];

$result = json_decode($result);

// 如果$result是null,说明解析失败(或者嵌套太深)

if(is_null($result))

{

// 处理

return false;

}

// 严格来说,这里还要对$result进行判断

return $result[0]-url_short;

}

}

php错误提示Syntax error, unexpected' ?

这个提示的是语法错误。但是,你这写的在语法上应该没毛病。

是不是你的编辑器提示出问题了,运行一下看看是否正确。

PHP语法错误

这个是模板文件编译后出现的语法错误,可以检查模板文件有没有写法问题。

可以按提示的

D:phpStudyWWWMyRuntimeCacheHome8dc23e4b59412263cf65a712c686eabb.php  LINE: 513

这个文件和行,对应找出模板文件出问题的地方,再检查修复

总提示我的PHP语法错误 在线求解

?

// 全站通用变量

$MyEmail = "phptalk@tnc.org";

$MyEmailLink = "a href="mailto:$MyEmail"$MyEmail/a";//注释:就这句。

$MyName = "PHP Talk";

$MySiteName = $MyName."'s Home Page";

?

你的这一段是没有错误的,我已经亲自测试过。

但你在问题里补充的$MyEmailLink = "a href= # 9 2;"mailto:$MyEmail # 9 2;"$MyEmail/a"; 是有错误的。

你应该像上面那段一样,对双引号使用转义符:反斜杠“”,否则php解释引擎会将其视为一个字符串变量的引号标识。 你不能在PHP代码中使用来代替反斜杠,因为只对HTML在浏览器中的最终解析有效。

而你这是PHP代码,是要先经过PHP引擎进行处理的,这里的双引号只是对php有歧义,而不是对HTML有歧义,所以你根本不需要使用 而是应该直接使用反斜杠

修改为$MyEmailLink = "a href="mailto:$MyEmail"$MyEmail/a"; 即可

php中赋值是没有任何语法错误但是在浏览器中提示错误

出现上面这些是 PHP 的提示而非报错,PHP 本身不需要事先声明变量即可直接使用,但是对未声明变量会有提示。一般作为正式的网站会把提示关掉的,甚至连错误信息也被关掉。

解决方法:

方法1:服务器配置修改

修改 php.ini 中的 error配置下错误显示方式:将error_reporting = E_ALL 修改为

error_reporting = E_ALL ~E_NOTICE

修改后重启下APCHE服务器,方可生效。

方法2:对变量进行初始化。

方法3:做判断isset($_post['']),empty($_post['']) if --else

方法4:在出现notice代码之前加上@,@表示这行有错误或是警告不要输出,@$username=$_post['username'];

在变量前面 加上一个 @ ,如 if (@$_GET['action']=='save') { ...

方法5:最后一种很实用,是别人写的一个函数,通过这个函数进行传递值。

定义一个函数:

复制代码 代码如下:

function _get($str){

$val = !empty($_GET[$str]) ? $_GET[$str] : null;

return $val;

}

然后在用的时候,直接用 _get('str') 代替 $_GET['str'] 就行啦~

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。