当前位置: 首页 > 面试题库 >

从PHP中的函数调用访问数组元素

唐烨煜
2023-03-14
问题内容

背景

在我定期使用的所有其他编程语言中,无需声明新变量即可保存函数结果就可以对函数的返回值进行操作。

但是,在PHP中,这似乎并不那么简单:

example1(函数结果是一个数组)

<?php 
function foobar(){
    return preg_split('/\s+/', 'zero one two three four five');
}

// can php say "zero"?

/// print( foobar()[0] ); /// <-- nope
/// print( &foobar()[0] );     /// <-- nope
/// print( &foobar()->[0] );     /// <-- nope
/// print( "${foobar()}[0]" );    /// <-- nope
?>

example2(函数结果是一个对象)

<?php    
function zoobar(){
  // NOTE: casting (object) Array() has other problems in PHP
  // see e.g., http://stackoverflow.com/questions/1869812
  $vout   = (object) Array('0'=>'zero','fname'=>'homer','lname'=>'simpson',);
  return $vout;
}

//  can php say "zero"?       
//  print zoobar()->0;         //  <- nope (parse error)      
//  print zoobar()->{0};       //  <- nope                    
//  print zoobar()->{'0'};     //  <- nope                    
//  $vtemp = zoobar();         //  does using a variable help?
//  print $vtemp->{0};         //  <- nope

问题答案:

这是专门用于数组解引用的功能,目前在php5.3中不支持该功能,但在下一个版本5.4中应该可以实现。另一方面,在当前的php版本中,对象取消引用是可能的。我也期待这个功能!



 类似资料:
  • 问题内容: 我正在使用一个模板引擎,该引擎将代码插入我想要的站点中。 我写了一个函数来测试一些很简单的东西: 问题是,$ this-> data是私有的,我无法在任何地方访问它,因此我必须使用getData();。导致我的问题。 不起作用,并且先分配值也不起作用,因为它将直接在if()块中使用。 有任何想法吗? 问题答案: 从PHP 5.4开始,可以完全做到这一点:

  • 本文向大家介绍php访问数组最后一个元素的函数end()用法,包括了php访问数组最后一个元素的函数end()用法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php访问数组最后一个元素的函数end()用法。分享给大家供大家参考。具体分析如下: end()函数在PHP中用于检索数组中的最后一个元素。end()函数需要一个数组作为其唯一参数,并返回给定数组最后一个元素的元素值。 上面的代码

  • 问题内容: 有没有办法可以通过JS函数运行php函数? 像这样的东西: 我基本上想运行php函数,当我单击名为“ Test”的href时,它将调用php函数。 问题答案: 本质上,这就是AJAX的作用。页面加载,然后将事件添加到元素。当用户导致事件被触发时(例如,单击某些内容),您的Javascript使用XMLHttpRequest对象将请求发送到服务器。 服务器响应后(大概带有输出),另一个J

  • 问题内容: 我的网站上有一个PHP函数,需要花几秒钟才能完成。这样可以保留我不想要的整个页面。 页面加载并在div中显示结果后,可以使用jquery调用此PHP函数吗?还要在PHP函数完成之前显示ajax加载程序映像? 我一直在看jQuery.post,但似乎无法使其正常工作。 有人可以帮忙吗? 谢谢 问题答案: AJAX发挥了魔力:

  • 问题内容: 我想从Android应用程序调用服务器上的特定php函数,并发送一些参数。到现在为止,我实现了可以使用HttpClient打开php文件并执行向Json的数据传输,并在我的应用程序中显示该文件。所以,现在我希望能够调用特定的函数并向其发送参数,我该怎么做?谢谢。 问题答案: 这是我编写的用于使用JSON注册新用户名的一段代码: 如果您注意到: 在那一部分中,您可以发送参数。 该方法只是

  • 问题内容: 这是我的jQuery代码: 在process.php页面中,我有多个功能。一种功能是sendmail()。 如何通过ajax调用此函数?我将代码编写为: 但是什么也没发生。 问题答案: 与通话传递一些到。 在php页面中,