Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:84196 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 8179 invoked from network); 2 Mar 2015 22:37:39 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Mar 2015 22:37:39 -0000 Authentication-Results: pb1.pair.com smtp.mail=yohgaki@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=yohgaki@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.54 as permitted sender) X-PHP-List-Original-Sender: yohgaki@gmail.com X-Host-Fingerprint: 209.85.192.54 mail-qg0-f54.google.com Received: from [209.85.192.54] ([209.85.192.54:43153] helo=mail-qg0-f54.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E7/F0-14834-136E4F45 for ; Mon, 02 Mar 2015 17:37:37 -0500 Received: by mail-qg0-f54.google.com with SMTP id h3so13775176qgf.13 for ; Mon, 02 Mar 2015 14:37:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=kK/9r4NGT1lEyh/qcTFn3OVUf56TuPa/e3tw73qYfHM=; b=Ygj4v6yICJdqQ861G0ltX8M85QVKNZYUoCJchfNlHPWvlGwUaqPao5RMffBa3E7Ve6 LDqfeX7x8JnRiUnv/yoeTt9mYrmOdn4MjFOCpZk9J9P1AqjLTHQkWteHpFerjfy2z6JL /f8jBzarM+IXuoBUrNMIog7CWzveRm4j5r1nxjlOYVKl3ACRnxzliy0FWrGaYAJRR44N SJ20yTx1nfPHhMeT4uvSmqcEDLqMN1eHflMqxZFDurwAWbVpRNGl3nkz11H+vCHgdpaE MjvzVrvDd1ggVsEIK29am3ft8K3f9xfFYbr3fpHUYPGcsI0p5DQNRziK14d1pvDihb04 9Msg== X-Received: by 10.140.131.9 with SMTP id 9mr55781155qhd.59.1425335854890; Mon, 02 Mar 2015 14:37:34 -0800 (PST) MIME-Version: 1.0 Sender: yohgaki@gmail.com Received: by 10.229.198.8 with HTTP; Mon, 2 Mar 2015 14:36:54 -0800 (PST) In-Reply-To: <54F4E29D.7080501@garfieldtech.com> References: <54F4E29D.7080501@garfieldtech.com> Date: Tue, 3 Mar 2015 07:36:54 +0900 X-Google-Sender-Auth: 5s2yfShVvRH1wB_d1EUNGtU1nwE Message-ID: To: Larry Garfield Cc: "internals@lists.php.net" Content-Type: multipart/alternative; boundary=001a1135162a510471051055dd94 Subject: Re: [PHP-DEV] Consistent function names From: yohgaki@ohgaki.net (Yasuo Ohgaki) --001a1135162a510471051055dd94 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Larry, On Tue, Mar 3, 2015 at 7:22 AM, Larry Garfield wrote: > > Sorry, I do not see how a new thread helps. Namespace either. These >> will only be duplicated APIs for little to no gain. Existing codes >> won't move as they won't be compatible with 5.x. >> >> We should really consider Nikita's experiment instead,as it acutally >> brings some big plus. Simple aliases for the sake of having _ in the >> names bring nothing but confusion in my humble opinion. >> >> Cheers, >> > > This topic has come up many times, and that is always the answer. We > should look at something meaningful (methods on scalars, which eliminates > the parameter order issue as well) rather than just duplicate function > names. > > This is at least the third time we've had this thread and come to that > same statement. I agree with it. > > So what's the blocker on discussing Nikita's work for core? I like scalar objects, but it does not resolve that PHP has non standard function names. It does not change old names, therefore it's impossible to resolve issue. This is the reason why I'm proposing while I like scalar object, use of namespace, etc. Many of proposed candidates have nothing to do with scalar object also. https://wiki.php.net/rfc/consistent_function_names#list_of_functions_to_be_= renamed Functions other than Standard module http://php.net/manual/en/book.sockets.php socket_get_peer_name =E2=86=90 socket_getpeername socket_get_sock_name =E2=86=90 socket_getsockname socket_recv_from =E2=86=90 socket_recvfrom socket_recv_msg =E2=86=90 socket_recvmsg socket_send_msg =E2=86=90 socket_sendmsg socket_send_to =E2=86=90 socket_sendto socket_error_str =E2=86=90 socket_strerror (Adjust to accord with other fun= ction names. e.g. bz_error_str()) http://php.net/manual/en/book.bc.php bc_add =E2=86=90 bcadd bc_comp =E2=86=90 bccomp bc_div =E2=86=90 bcdiv bc_mod =E2=86=90 bcmod bc_mul =E2=86=90 bcmul bc_pow =E2=86=90 bcpow bc_pow_mod =E2=86=90 bcpowmod bc_scale =E2=86=90 bcscale bc_sqrt =E2=86=90 bcsqrt bc_sub =E2=86=90 bcsub http://php.net/manual/en/book.gettext.php gettext_bind_text_domain_codeset =E2=86=90 bind_textdomain_codeset gettext_bind_text_domain =E2=86=90 bindtextdomain gettext_dc =E2=86=90 dcgettext gettext_dcn =E2=86=90 dcngettext gettext_d =E2=86=90 dgettext gettext_dn =E2=86=90 dngettext gettext_n =E2=86=90 ngettext gettext_text_domain =E2=86=90 textdomain http://php.net/manual/en/book.bzip2.php bz_close =E2=86=92 bzclose bz_compress =E2=86=92 bzcompress bz_decompress =E2=86=92 bzdecompress bz_errno =E2=86=92 bzerrno bz_error =E2=86=92 bzerror bz_error_str =E2=86=92 bzerrstr bz_flush =E2=86=92 bzflush bz_open =E2=86=92 bzopen bz_read =E2=86=92 bzread bz_write =E2=86=92 bzwrite http://php.net/manual/en/book.zlib.php gz_close =E2=86=92 gzclose gz_compress =E2=86=92 gzcompress gz_decode =E2=86=92 gzdecode gz_deflate =E2=86=92 gzdeflate gz_encode =E2=86=92 gzencode gz_eof =E2=86=92 gzeof gz_file =E2=86=92 gzfile gz_getc =E2=86=92 gzgetc gz_gets =E2=86=92 gzgets gz_getss =E2=86=92 gzgetss gz_inflate =E2=86=92 gzinflate gz_open =E2=86=92 gzopen gz_passthru =E2=86=92 gzpassthru gz_puts =E2=86=92 gzputs gz_read =E2=86=92 gzread gz_rewind =E2=86=92 gzrewind gz_seek =E2=86=92 gzseek gz_tell =E2=86=92 gztell gz_uncompress =E2=86=92 gzuncompress gz_write =E2=86=92 gzwrite gz_read_file =E2=86=92 readgzfile http://php.net/manual/en/book.image.php gd_image_size =E2=86=92 getimagesize gd_image_size_from_string =E2=86=92 getimagesizefromstring gd_type_to_extension =E2=86=92 image_type_to_extension gd_type_to_mime_type =E2=86=92 image_type_to_mime_type gd_2wbmp =E2=86=92 image2wbmp gd_affine =E2=86=92 imageaffine gd_affine_matrix_concat =E2=86=92 imageaffinematrixconcat gd_affine_matrix_get =E2=86=92 imageaffinematrixget gd_alpha_blending =E2=86=92 imagealphablending gd_antialias =E2=86=92 imageantialias gd_arc =E2=86=92 imagearc gd_char =E2=86=92 imagechar gd_charup =E2=86=92 imagecharup gd_color_allocate =E2=86=92 imagecolorallocate gd_color_allocate_alpha =E2=86=92 imagecolorallocatealpha gd_color_at =E2=86=92 imagecolorat gd_color_closest =E2=86=92 imagecolorclosest gd_color_closest_alpha =E2=86=92 imagecolorclosestalpha gd_color_closest_hwb =E2=86=92 imagecolorclosesthwb gd_color_deallocate =E2=86=92 imagecolordeallocate gd_color_exact =E2=86=92 imagecolorexact gd_color_exact_alpha =E2=86=92 imagecolorexactalpha gd_color_match =E2=86=92 imagecolormatch gd_color_resolve =E2=86=92 imagecolorresolve gd_color_resolve_alpha =E2=86=92 imagecolorresolvealpha gd_color_set =E2=86=92 imagecolorset gd_colors_for_index =E2=86=92 imagecolorsforindex gd_colors_total =E2=86=92 imagecolorstotal gd_color_transparent =E2=86=92 imagecolortransparent gd_convolution =E2=86=92 imageconvolution gd_copy =E2=86=92 imagecopy gd_copy_merge =E2=86=92 imagecopymerge gd_copy_merge_gray =E2=86=92 imagecopymergegray gd_copy_resampled =E2=86=92 imagecopyresampled gd_copy_resized =E2=86=92 imagecopyresized gd_create =E2=86=92 imagecreate gd_create_from_gd2 =E2=86=92 imagecreatefromgd2 gd_create_from_gd2_part =E2=86=92 imagecreatefromgd2part gd_create_from_gd =E2=86=92 imagecreatefromgd gd_create_from_gif =E2=86=92 imagecreatefromgif gd_create_from_jpeg =E2=86=92 imagecreatefromjpeg gd_create_from_png =E2=86=92 imagecreatefrompng gd_create_from_string =E2=86=92 imagecreatefromstring gd_create_from_wbmp =E2=86=92 imagecreatefromwbmp gd_create_from_webp =E2=86=92 imagecreatefromwebp gd_create_from_xbm =E2=86=92 imagecreatefromxbm gd_create_from_xpm =E2=86=92 imagecreatefromxpm gd_create_true_color =E2=86=92 imagecreatetruecolor gd_crop =E2=86=92 imagecrop gd_crop_auto =E2=86=92 imagecropauto gd_dashed_line =E2=86=92 imagedashedline gd_destroy =E2=86=92 imagedestroy gd_ellipse =E2=86=92 imageellipse gd_fill =E2=86=92 imagefill gd_filled_arc =E2=86=92 imagefilledarc gd_filled_ellipse =E2=86=92 imagefilledellipse gd_filled_polygon =E2=86=92 imagefilledpolygon gd_filled_rectangle =E2=86=92 imagefilledrectangle gd_fill_to_border =E2=86=92 imagefilltoborder gd_filter =E2=86=92 imagefilter gd_flip =E2=86=92 imageflip gd_font_height =E2=86=92 imagefontheight gd_font_width =E2=86=92 imagefontwidth gd_ft_bbox =E2=86=92 imageftbbox gd_ft_text =E2=86=92 imagefttext gd_gamma_correct =E2=86=92 imagegammacorrect gd_raw2 =E2=86=92 imagegd2 gd_raw =E2=86=92 imagegd gd_gif =E2=86=92 imagegif gd_grab_screen =E2=86=92 imagegrabscreen gd_grab_window =E2=86=92 imagegrabwindow gd_interlace =E2=86=92 imageinterlace gd_is_true_color =E2=86=92 imageistruecolor gd_jpeg =E2=86=92 imagejpeg gd_layer_effect =E2=86=92 imagelayereffect gd_line =E2=86=92 imageline gd_load_font =E2=86=92 imageloadfont gd_palette_copy =E2=86=92 imagepalettecopy gd_palette_to_true_color =E2=86=92 imagepalettetotruecolor gd_png =E2=86=92 imagepng gd_polygon =E2=86=92 imagepolygon gd_ps_bbox =E2=86=92 imagepsbbox gd_ps_encode_font =E2=86=92 imagepsencodefont gd_ps_extend_font =E2=86=92 imagepsextendfont gd_ps_free_font =E2=86=92 imagepsfreefont gd_ps_load_font =E2=86=92 imagepsloadfont gd_ps_slant_font =E2=86=92 imagepsslantfont gd_ps_text =E2=86=92 imagepstext gd_rectangle =E2=86=92 imagerectangle gd_rotate =E2=86=92 imagerotate gd_save_alpha =E2=86=92 imagesavealpha gd_scale =E2=86=92 imagescale gd_set_brush =E2=86=92 imagesetbrush gd_set_interpolation =E2=86=92 imagesetinterpolation gd_set_pixel =E2=86=92 imagesetpixel gd_set_style =E2=86=92 imagesetstyle gd_set_thickness =E2=86=92 imagesetthickness gd_set_tile =E2=86=92 imagesettile gd_string =E2=86=92 imagestring gd_string_up =E2=86=92 imagestringup gd_width =E2=86=92 imagesx gd_height =E2=86=92 imagesy gd_true_color_to_palette =E2=86=92 imagetruecolortopalette gd_ttf_bbox =E2=86=92 imagettfbbox gd_ttf_text =E2=86=92 imagettftext gd_types =E2=86=92 imagetypes gd_wbmp =E2=86=92 imagewbmp gd_webp =E2=86=92 imagewebp gd_xbm =E2=86=92 imagexbm gd_iptc_embed =E2=86=92 iptcembed gd_iptc_parse =E2=86=92 iptcparse gd_jpeg2wbmp =E2=86=92 jpeg2wbmp gd_png2wbmp =E2=86=92 png2wbmp http://php.net/manual/en/book.exif.php exif_image_type =E2=86=92 exif_imagetype exif_tag_name =E2=86=92 exif_tagname http://php.net/manual/en/book.mbstring.php mb_decode_mime_header =E2=86=92 mb_decode_mimeheader mb_decode_numeric_entity =E2=86=92 mb_decode_numericentity mb_encode_mime_header =E2=86=92 mb_encode_mimeheader mb_encode_numeric_entity =E2=86=92 mb_encode_numericentity Date/Time related: http://php.net/manual/en/book.datetime.php date_format =E2=86=92 date (Return formatted date string of timestamp) date_get =E2=86=92 getdate (Return array date) date_check =E2=86=92 checkdate time_part =E2=86=92 idate (Retrieve part of date information as int accordi= ng to format) time =E2=86=92 time (The same as it is now. Return int timestamp) time_make =E2=86=92 mktime (Return timestamp from number of int parameters) time_format =E2=86=92 strftime (Return lobal time string according to forma= t/locale) time_utc =E2=86=92 gmdate (Return array GMT/UTC timestamp) time_utc_make =E2=86=92 gmmktime (Return GMT/UTC timestamp from array) time_utc_format =E2=86=92 gmstrftime (Return GMT/UTC time string according = to format/locale) time_get =E2=86=92 gettimeofday (Return array time of day) time_local =E2=86=92 localtime (Return localtime() result array. More info = than time_get/gettimeofday) time_micro =E2=86=92 microtime (Return microtime resolution time) time_parse =E2=86=92 strptime (Parse time string generated by time_format/s= trftime. Return timestamp) time_from_string =E2=86=92 strtotime (Parse string time and return timestam= p. Return timestamp) http://php.net/manual/en/book.apache.php sapi_request_headers =E2=86=92 getallheaders (Categorized as apache functio= n, but available for CLI and FCGI also) apache_virtual =E2=86=92 virtual apache_get_env =E2=86=92 apache_getenv apache_set_env =E2=86=92 apache_setenv "String" functions http://php.net/ref.strings HTML related: html_entities =E2=86=92 htmlentities html_escape =E2=86=92 htmlspecialchars (Rename it with real meaning) html_escape_decode =E2=86=92 htmlspecialchars_decode html_nl2br =E2=86=92 nl2br html_strip_tags =E2=86=92 strip_tags Locate related: locale_conv =E2=86=92 localeconv locale_set =E2=86=92 setlocale =E2=80=9Cstring=E2=80=9D function but no =E2=80=9Cstr_=E2=80=9D prefix str_cslashes =E2=86=92 addcslashes str_cslashes_strip =E2=86=92 stripcslashes str_slashes =E2=86=92 addslashes str_slashes_strip =E2=86=92 stripslashes str_count_chars =E2=86=92 count_chars str_explode =E2=86=92 explode str_implode =E2=86=92 implode str_money_format =E2=86=92 money_format str_number_format =E2=86=92 number_format str_levenshtein =E2=86=92 levenshtein str_metaphone =E2=86=92 metaphone str_parse =E2=86=92 parse_str str_quote_meta =E2=86=92 quotemeta str_similar_text =E2=86=92 similar_text str_soundex =E2=86=92 soundex str_sscanf =E2=86=92 sscanf str_rtrim =E2=86=92 rtrim str_trim =E2=86=92 trim str_ltrim =E2=86=92 ltrim str_lc_first =E2=86=92 lcfirst str_uc_first =E2=86=92 ucfirst str_uc_words =E2=86=92 ucwords str_word_wrap =E2=86=92 wordwrap Comparison: str_cmp =E2=86=92 strcmp str_ncmp =E2=86=92 strncmp str_case_cmp =E2=86=92 strcasecmp str_ncase_cmp =E2=86=92 strncasecmp str_nat_cmp =E2=86=92 strnatcmp str_nat_case_cmp =E2=86=92 strnatcasecmp Conversion: str_to_lower =E2=86=92 strtolower str_to_upper =E2=86=92 strtoupper Misc: str_get_csv =E2=86=92 str_getcsv Named after libc: ord =E2=86=92 ord (Keep as it is now) chr =E2=86=92 chr (Keep as it is now. str_chr() is strstr() alias.) str_chr =E2=86=92 strchr str_cmp =E2=86=92 strcmp str_coll =E2=86=92 strcoll str_cspn =E2=86=92 strcspn str_ipos =E2=86=92 stripos str_istr =E2=86=92 stristr str_len =E2=86=92 strlen str_pbrk =E2=86=92 strpbrk str_pos =E2=86=92 strpos str_rchr =E2=86=92 strrchr str_rev =E2=86=92 strrev str_ripos =E2=86=92 strripos str_rpos =E2=86=92 strrpos str_spn =E2=86=92 strspn str_str =E2=86=92 strstr str_tok =E2=86=92 strtok str_tr =E2=86=92 strtr http://php.net/manual/en/book.mbstring.php mb_str_cut =E2=86=92 mb_strcut mb_strim_width =E2=86=92 mb_strimwidth mb_str_ipos =E2=86=92 mb_stripos mb_str_istr =E2=86=92 mb_stristr mb_str_len =E2=86=92 mb_strlen mb_str_pos =E2=86=92 mb_strpos mb_str_rchr =E2=86=92 mb_strrchr mb_str_richr =E2=86=92 mb_strrichr mb_str_ripos =E2=86=92 mb_strripos mb_str_rpos =E2=86=92 mb_strrpos mb_str_str =E2=86=92 mb_strstr mb_str_to_lower =E2=86=92 mb_strtolower mb_str_to_upper =E2=86=92 mb_strtoupper mb_str_width =E2=86=92 mb_strwidth http://php.net/manual/en/book.iconv.php iconv_str_len =E2=86=92 iconv_strlen iconv_str_pos =E2=86=92 iconv_strpos iconv_str_rpos =E2=86=92 iconv_strrpos http://php.net/manual/en/book.intl.php grapheme_str_ipos =E2=86=92 grapheme_stripos grapheme_str_istr =E2=86=92 grapheme_stristr grapheme_str_len =E2=86=92 grapheme_strlen grapheme_str_pos =E2=86=92 grapheme_strpos grapheme_str_ripos =E2=86=92 grapheme_strripos grapheme_str_rpos =E2=86=92 grapheme_strrpos grapheme_str_str =E2=86=92 grapheme_strstr "Array" functions http://php.net/manual/en/ref.array.php array_sort =E2=86=92 sort (Sort values) array_sort_reverse =E2=86=92 rsort (Reverse sort values) array_sort_user =E2=86=92 usort (User sort values) array_sort_assoc =E2=86=92 asort (Keep key and sort) array_sort_assoc_reverse =E2=86=92 arsort (Keep key and reverse sort) array_sort_assoc_user =E2=86=92 uasort (Keep key and user sort) array_sort_key =E2=86=92 ksort (Sort keys) array_sort_key_reverse =E2=86=92 krsort (Reverse sort keys) array_sort_key_user =E2=86=92 uksort (User key sort) array_sort_natual =E2=86=92 natsort (Natural sort) array_sort_natual_case =E2=86=92 natcasesort (Natural sort without case) array_in =E2=86=92 in_array array_range =E2=86=92 range (Create array of range) array_shuffle =E2=86=92 shuffle (Randomize values) Other than "string" and "array" standard module functions http://php.net/manual/en/book.misc.php time_sleep =E2=86=90 sleep time_nano_sleep =E2=86=90 time_nanosleep time_micro_sleep =E2=86=90 usleep time_unique_id =E2=86=90 uniqid (uniqid() is microtime() based) sys_get_load_avg =E2=86=90 sys_getloadavg php_strip_white_space =E2=86=90 php_strip_whitespace http://php.net/manual/en/book.url.php url_decode =E2=86=90 urldecode url_encode =E2=86=90 urlencode url_raw_decode =E2=86=90 rawurldecode url_raw_encode =E2=86=90 rawurlencode url_parse =E2=86=90 parse_url url_build_query =E2=86=90 http_build_query (Make it URL function) http://php.net/manual/en/ref.info.php php_credits =E2=86=90 phpcredits php_info =E2=86=90 phpinfo php_version =E2=86=90 phpversion get_last_mod =E2=86=90 getlastmod (Return main script timestamp.) get_my_gid =E2=86=90 getmygid (=E2=80=9Cmy_=E2=80=9D prefix used because th= ey return info about current script.) get_my_inode =E2=86=90 getmyinode get_my_pid =E2=86=90 getmypid get_my_uid =E2=86=90 getmyuid get_rusage =E2=86=90 getrusage get_opt =E2=86=90 getopt get_env =E2=86=90 getenv put_env =E2=86=90 putenv http://php.net/manual/en/book.var.php bool_val =E2=86=90 boolval double_val =E2=86=90 doubleval float_val =E2=86=90 floatval int_val =E2=86=90 intval str_val =E2=86=90 strval get_type =E2=86=90 gettype set_type =E2=86=90 settype is_set =E2=86=90 isset (There are number of is_*(). e.g.is_int()/is_string(= )/etc) http://php.net/manual/en/ref.exec.php exec =E2=86=90 exec (exec() remains as it is) exec_passthru =E2=86=90 passthru (Named after exec()) exec_shell =E2=86=90 shell_exec exec_system =E2=86=90 system exec_escape_arg =E2=86=90 escapeshellarg exec_escape_cmd =E2=86=90 escapeshellcmd http://php.net/manual/en/ref.filesystem.php disk_free_space =E2=86=90 diskfreespace link =E2=86=90 link (The same as now) link_info =E2=86=90 linkinfo link_stat =E2=86=90 lstat link_chown =E2=86=90 lchown link_chgrp =E2=86=90 lchgrp link_read =E2=86=90 readlink link_symbolic =E2=86=90 symlink path_base_name =E2=86=90 basename path_info =E2=86=90 pathinfo read_file =E2=86=90 readfile (This could be file_read() or file_passthru(),= but file_read() conflict with fread(), file_passthru() conflict with fpassthru(). Any good name?) pipe_close =E2=86=90 pclose pipe_open =E2=86=90 popen realpath related : Could be as it is now? realpath =E2=86=90 realpath realpath_cache_get =E2=86=90 realpath_cache_get realpath_cache_size =E2=86=90 realpath_cache_size file_atime =E2=86=90 fileatime file_ctime =E2=86=90 filectime file_group =E2=86=90 filegroup file_inode =E2=86=90 fileinode file_mtime =E2=86=90 filemtime file_owner =E2=86=90 fileowner file_perms =E2=86=90 fileperms file_size =E2=86=90 filesize file_type =E2=86=90 filetype file_name_match =E2=86=90 fnmatch file_temp_name =E2=86=90 tempnam file_copy =E2=86=90 copy file_stat() =E2=86=90 stat() file_stat_clear_cache =E2=86=90 clearstatcache f*() : Prefixed by file_? - It's supposed to be named as =E2=80=9Cfile modu= le=E2=80=9D. If =E2=80=9Cf=E2=80=9D prefix is kept, there should be =E2=80=9Cftmp(tmpfile)= =E2=80=9D,=E2=80=9Cfrewind(rewind)=E2=80=9D because these operates with file handle. file_open =E2=86=90 fopen file_close =E2=86=90 fclose file_eof =E2=86=90 feof file_flush =E2=86=90 fflush file_getc =E2=86=90 fgetc file_get_csv =E2=86=90 fgetcsv file_gets =E2=86=90 fgets file_getss =E2=86=90 fgetss file_passthru =E2=86=90 fpassthru file_put_csv =E2=86=90 fputcsv file_puts =E2=86=90 fputs file_read =E2=86=90 fread file_scanf =E2=86=90 fscanf file_seek =E2=86=90 fseek file_stat =E2=86=90 fstat file_tell =E2=86=90 ftell file_truncate =E2=86=90 ftruncate file_write =E2=86=90 fwrite file_rewind =E2=86=90 rewind (This one is exception that does not have =E2= =80=9Cf=E2=80=9D prefix, but returns file handle) file_temp =E2=86=90 tmpfile (This one is exception that does not have =E2= =80=9Cf=E2=80=9D prefix, but operates with file handle) file_delete =E2=86=90 unlink (There is dummy =E2=80=9Cdelete()=E2=80=9D fun= ction entry for unlink(). Unlink is a directory operation in fact, but made it as file_delete(). There will be dir_delete()) Directory related : Prefixed by dir_? It's supposed to be named as =E2=80= =9Cdir module=E2=80=9D dir_name =E2=86=90 dirname dir_glob =E2=86=90 glob dir_rename =E2=86=90 rename (Rename is actually a directory operation. e.g = File deletion/rename is controlled by current dir permission) dir_delete =E2=86=90 rmdir dir_create =E2=86=90 mkdir dir_chown =E2=86=90 chown dir_chmod =E2=86=90 chmod dir_chgrp =E2=86=90 chgrp Methods StdClass::__setState() =E2=86=90 StdClass::__set_state() =E2=86=92 SessionIdInterface::createSid() =E2=86=90 SessionIdInterface::create_sid() -- Yasuo Ohgaki yohgaki@ohgaki.net --001a1135162a510471051055dd94--